我想为写入一个线程创建很多线程,写完后我调用exit ...但是,当我调用exit时,我是否释放堆栈或者我仍然使用它?
答案 0 :(得分:0)
为了避免资源泄漏,您必须执行以下两项之一:
如果不这样做,通常会导致整个堆栈在许多实现中“泄漏”。
答案 1 :(得分:0)
系统为每个线程(线程ID,线程retval,堆栈)分配底层存储,并且这将保留在进程空间中(并且不会被回收),直到线程终止并且已被其他线程连接。 / p>
如果你有一个线程,你不关心线程如何终止,并且分离线程是一个不错的选择。 对于分离的线程,系统会在线程终止后自动回收其底层资源。
来源文章:http://www.ibm.com/developerworks/library/l-memory-leaks/