1. 程式人生 > 其它 >06LinuxC執行緒學習之執行緒間共享全域性變數(對比程序間讀時共享,寫時複製)

06LinuxC執行緒學習之執行緒間共享全域性變數(對比程序間讀時共享,寫時複製)

技術標籤:多執行緒linux

注:

  • 1)父子程序共享的內容文章。
https://blog.csdn.net/weixin_44517656/article/details/109442424
  • 2)測試父子程序使用者區共享內容讀時共享寫時複製的習題(實際是對全域性變數的說明)
https://blog.csdn.net/weixin_44517656/article/details/109442948

1 執行緒間共享全域性變數和程序間讀時共享,寫時複製

  • 1)我們只需要記住: 執行緒間共享全域性變數,而程序間讀時共享,寫時複製。
    更詳細的說:執行緒共享堆和全域性區(即共享資料段、程式碼段等地址空間),常用的是全域性變數。而程序不共享全域性變數,只能藉助mmap。可以看上面程序的文章例子。
  • 2)執行緒間的棧的是獨佔的,堆共享;而程序間的話堆疊都是獨立的,當然,比較程序的意義就不太大了,因為程序間本來就是獨立的個體。

這個我們平時編寫程式碼就知道了,多個檔案中,建立多個執行緒,只需要寫一個全域性變數即可。而多程序就不行。