##Netty 原理 Netty 是一个高性能、异步事件驱动的 NIO 框架,基于 JAVA NIO 提供的 API 实现。它提供了对TCP、UDP 和文件传输的支持,作为一个异步 NIO 框架,Netty 的所有 IO 操作都是异步非阻塞的,通过 Future-Listener 机制,用户可以方便 ...
分类:
Web程序 时间:
2020-07-02 18:28:43
阅读次数:
63
一、内存池的概念和实现原理 内存池要解决的问题: (1)减少malloc的次数,意味着减少对内存的浪费(主要问题) (2)减少malloc的次数,会有一些速度和效率上的提升,但是提升不明显(顺带) 实现原理: (1)用malloc申请一大块内存,当要分配的时候,从这一大块内存中一点一点分配, 当这一 ...
分类:
其他好文 时间:
2020-07-02 00:10:13
阅读次数:
53
线程池(重点) 一:线程池:三大方法,七大参数,四种拒绝策略 池化技术: 01:程序的运行,本质 :占用系统的资源! 优化资源的使用! =>池化技术 02:线程池、连接池、内存池、对象池///......创建、销毁。 十分浪费资源 03:池化技术:事先准备好一些资源,有人要用,就来我这里拿,用完之后 ...
分类:
编程语言 时间:
2020-06-26 10:20:28
阅读次数:
66
DM 数据库管理系统的内存结构主要包括内存池、缓冲区、排序区、哈希区等。根据系统中子模块的不同功能,对内存进行了上述划分,并采用了不同的管理模式。
分类:
数据库 时间:
2020-05-27 15:25:51
阅读次数:
97
0、如果想要实现一门语言的内存管理,该怎么设计? 1.内存池:向系统申请大块内存,然后进行管理和分配(管理内存分配)。 2.垃圾回收:当分配的内存使用完之后,不直接归还给系统,而是归还给内存池,方便进行下一次复用。至于垃圾回收选择标记回收,还是分代回收算法应该符合语言设计初衷。 3.大小切分:使用单 ...
分类:
编程语言 时间:
2020-05-08 20:12:18
阅读次数:
102
前言: 本文总结概括SGI STL源码中二级配置器的工作方式,主要是学习内存池+16条链表的内存分配方式。 无论一级配置器还是二级配置器,统一的接口如下: //其中Alloc可能是一级配置器,也有可能是二级配置器; //这个类的作用其实就是单纯地转给一级或者二级配置器调用; template<cla ...
分类:
其他好文 时间:
2020-05-03 20:41:16
阅读次数:
56
Python内存管理机制:引入计数器, 计数器: 每个对象都有指向该对象的引用总计数。 赋值引用:查看对象的引用计数:sys.getrefcount() 引用计数增加: 1、对象被创建,2、另外的别人被创建,3、作为容器对象的一个元素,4被作为参数传递给函数:foo(x) 引用计数减少: 1、对象的 ...
分类:
编程语言 时间:
2020-05-02 15:19:31
阅读次数:
70
最近在研究STL的空间配置器的时候,使用到内存池和定位new的场景,感觉知识优点遗忘,总结总结首先,什么是定位new??官方解释:我的理解:先申请一块内存空间,然后在这段空间上来构造对象(确定对象的位置),常使用到的场景是内存池内置类型使用规则:#include<new>//或者使用#include<iostream>,因为<iostream>中包含<ne
分类:
其他好文 时间:
2020-05-02 00:09:32
阅读次数:
52
线程池:线程池的原理很简单,类似于操作系统中的缓冲区的概念,它的流程如下:先启动若干数量的线程,并让这些线程都处于睡眠状态,当需要一个开辟一个线程去做具体的工作时,就会唤醒线程池中的某一个睡眠线程,让它去做具体工作,当工作完成后,线程又处于睡眠状态,而不是将线程销毁。 进程池与线程池同理。 内存池: ...
分类:
编程语言 时间:
2020-04-29 15:10:27
阅读次数:
77
InnoDB体系架构 后台线程的主要作用是负责刷新内存池中的数据,保证缓冲池中的内存缓存的是最近的数据。此外将已修改的数据文件刷新到磁盘文件,同时保证在数据库发生异常的情况下InnoDB能恢复到正常运行状态。 后台线程 1. Master Thread Master Thread是一个非常核心的后台 ...
分类:
数据库 时间:
2020-04-03 15:12:19
阅读次数:
83