PostThreadMessage内存释放问题
想问一下各位,PostThreadMessage如何做到“谁申请,谁释放”。
自己做的尝试如下:
1. 线程 A new 一块内存 PostThreadMessage到线程 B 然后由 线程 B delete,但不是“谁申请,谁释放”,而且有各线程堆栈空间不一致时,释放失败的问题
2. 现在采用的方法是 线程 A 在进程堆上 HeapAlloc,PostThreadMessage 到线程 B 然后由 线程 B HeapFree,测试没有问题,同样不是“谁申请,谁释放”。
3. 线程 A 提供释放内存的函数,线程A new 然后PostThreadMessage,线程 B 使用完内存之后,发送消息给线程 A,由线程 A 释放,做到“谁申请,谁释放”,但是需要额外的信息交互以及处理函数。
不知道各位有没有比较好的使用PostThreadMessage传递大量参数的方法。
[解决办法]
如果是我,我用3
[解决办法]
做个内存管理的类,当不再使用后,标记一下,然后释放