0
Linux上的一個資源提到了使用克隆系統調用來實現pthread-create,而不是其他一些基於unix的平臺(其實現方式與此相同)。
這意味着在Linux下,使用pthread_create從同一進程創建的兩個線程將具有不同的父進程標識。Linux上的pthread_create的實現
$ ./a.out
new thread: pid 6628 tid 1026 (0x402)
main thread: pid 6626 tid 1024 (0x400)
問題
- 雖然克隆系統調用創建一個子進程可以共享其母公司的執行上下文的配置量(如文件描述符和內存),在我看來,所有執行中這可能不是最有效的。在Linux下,從pthread_create創建的每個線程都有相應的進程(儘管它將與其他進程共享資源)?這個解釋是否正確?