2010-01-22 18 views
0

當我在初始線程中使用pthread_exit()時,初始線程切換到終止狀態。 但我不明白這個過程。pthread_exit()和初始線程

可以在初始線程處於白蟻狀態時存在正在運行的進程嗎?

+1

另請參閱:http://stackoverflow.com/questions/1695106/multiple-threads-in-c-program/1695137#1695137 – 2010-01-23 04:36:38

回答

3

在pthread中,只要任何線程正在運行,該進程將保持活動狀態。

所以是的,即使初始線程已經退出,也可以有一個正在運行的進程。

有一件事可能會讓你感到困惑,當初始線程從main()返回時會發生什麼。這相當於調用exit()。所以如果main()返回,你的過程將結束。但是,如果最初的線程調用pthread_exit()並且還有其他線程仍然存在,那麼您的進程將保持活動狀態。