我的疑惑以判断题形式来问吧。
- 若一个进程创建一个线程后,这个线程正常无限运行下去(假设如此)。突然这个进程由于异常退出,则这个线程也会消失,不会存在于系统后台,windows和linux平台都是如此。
- 若一个进程创建一个线程A,而A里又创建线程B,创建完后,A退出结束,B依旧无限运行下去(假设如此)。突然这个进程又由于异常退出,则线程B也会消失,也不会存在于系统后台,windows和linux平台都是如此。
若不对,希望能说下理由,先行谢过各位老哥。
我的疑惑以判断题形式来问吧。
若不对,希望能说下理由,先行谢过各位老哥。
你可以把进程看成自己的一个脚本程序的运行,你脚本程序如果挂了,不管你开什么子进程还是线程,统统消失。如果你以为它正常退出了,而实际上ps中还能看到,说明你进程或者线程没有清理干净,使得你的主程序还活着。
7 回答5.3k 阅读
3 回答2k 阅读✓ 已解决
4 回答4k 阅读
2 回答3.9k 阅读✓ 已解决
2 回答5.9k 阅读✓ 已解决
2 回答3.2k 阅读✓ 已解决
1 回答3.2k 阅读✓ 已解决
先说多线程的情况:线程是依托于进程的,如果进程结束了,该进程内的所有线程都会结束。可以理解为每个进程至少会有一个线程:主线程。主线程所创建出来的线程,都依托于该进程。也就是说,不可能有脱离进程而独立运行的线程存在。
再说多进程的情况:Unix/Linux环境下,有三种情况:
windows环境应该也类似,不过没什么研究。