c - Ptheard 会杀死线程函数中分配的空闲动态内存吗?

标签 c memory-management memory-leaks pthreads

我有一个使用 malloc() 分配内存的线程函数。我使用 pthread_kill 终止线程而不释放动态分配的内存。一旦我调用 pthread_kill 是否会自动释放它,否则会发生泄漏?

最佳答案

您在一个线程中分配的内存并不“属于”该线程。它是从所有其他线程正在使用您的程序的同一个全局堆中分配的。所以你必须释放你分配的所有内存,否则你最终会发生泄漏。

关于c - Ptheard 会杀死线程函数中分配的空闲动态内存吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3443229/

相关文章:

c++ - 为什么需要多维数组中更高维度的维度范围?

ios - 是否有必要在 UIView.animateWithDuration(...) 的闭包中使用 [unowned self]?

algorithm - 内存寻址方法为对应于 'nCk' 值组合的值分配内存(静态硬件)从 0 到 n-1

c# - 无法在OpenCV中分配字节

delphi - 为什么我的程序会泄漏虚拟内存?

c - 超出无符号边界

c - 两个库提供同名函数产生冲突怎么办?

c++ - Clang的不同处理阶段

c++ - 为什么我们使用内存管理器?

android - fragment 中的内存泄漏