Linux

每個程序都被視為一個執行緒嗎?

  • May 20, 2014

Linux程序是否被視為執行緒?

例如,如果我編寫一個簡單的 c 程序,呼叫 pthread_create 在 main() 中創建一個新執行緒,這是否意味著我現在有 2 個執行緒,一個用於 main(),一個用於新創建的執行緒?還是只有生成的執行緒才算作一個執行緒,而不是 main() 程序?

我想知道,因為通過呼叫 pthread_join 將生成的執行緒加入 main() 似乎我正在將執行緒連接在一起,因此暗示主程序是一個執行緒。

如果我使用了錯誤的術語,也請糾正我。:)

man pthreads我的電腦

In  addition  to  the **main (initial) thread**, and the threads that the 
program creates using pthread_create(3), the implementation creates a 
"manager" thread.  This thread handles thread creation and termination.
(Problems can result if this thread  is  inad‐ vertently killed.)

引用自:https://unix.stackexchange.com/questions/131173