完全是多线程编程退出中的退出命令吗?

时间:2016-02-02 09:28:31

标签: c multithreading zombie-process

我用C编写了一个程序。我有3个线程同时工作。 (为了保护关键部分,我使用信号量)。我的程序在某些情况下退出(提供i=by if命令的结束情况),它存在于第2号线程中,命令为:exit(-1)

当我在linux中运行我的程序时,当它到达这种情况时它会完全退出。但我仍然不确定是否所有其他线程退出?如果他们留在记忆中?有人告诉我他们仍然是僵尸,因此它可能会损害系统,但是当我查看进程(使用ps命令)时,我什么都没看见。现在我需要一些关于结束所有线程的帮助,并在我的系统中寻找僵尸。

1 个答案:

答案 0 :(得分:1)

exit终止整个程序,之后没有任何线程在运行。这可能不是您想要的,具体取决于程序的设计方式 - 不进行清理,线程在终止时终止。