Linux線程的本質。
其實在Linux 中,建立的線程并不是在原先的程序中,而是系統通過一個系統調用clone() 。該系統copy 了一個和原先程序完全一樣的程序,并在這個程序中執行線程函數。不過這個copy 過程和fork 不一樣。copy 後的程序和原先的程序共享了所有的變量,運作環境。這樣,原先程序中的變量變動在copy 後的程序中便能展現出來。
Linux線程的本質。
其實在Linux 中,建立的線程并不是在原先的程序中,而是系統通過一個系統調用clone() 。該系統copy 了一個和原先程序完全一樣的程序,并在這個程序中執行線程函數。不過這個copy 過程和fork 不一樣。copy 後的程序和原先的程序共享了所有的變量,運作環境。這樣,原先程序中的變量變動在copy 後的程序中便能展現出來。