爱
爱元元的哥哥
Unregistered / Unconfirmed
GUEST, unregistred user!
用一个内存块链表来管理你遇到的问题,在驱动开发里,可以用looksidelist,也称为后备链表。原理是预先估计你的程序将使用的最大内存量,申请一个这么大的内存块,然后把大内存块等分为n个小块,用链表进行管理,需要内存的时候就直接查询链表中空闲的数据块,找到后把空闲位置为非空闲状态,内存用完后再把非空闲状态置为空闲状态,这样不用频繁的申请和释放内存。在linux内进程间通讯,我都用共享内存加信号量实现这种方案。你的线程在同一个进程内,直接用临界区+我所说的内存池就可以了。