看板 Grad-ProbAsk 關於我們 聯絡資訊
大家好 小弟我想問一個超級基本的問題 請問這個共享變數的值到底要怎麼看? 一直以來都沒真正弄懂它 https://i.imgur.com/QzvuWlV.jpg 請問為什麼沒有5,4和5,6 還有為什麼有6,6和4,4 那個printf是可以不用父和子都要執行完就能印了嗎 常常看到說共享value+-完的值還沒asign回去 另外一個process又把value做+-才會造成 值不一樣,請問assign回去是assign到哪裡去 是類似把value更新回雲端再給別人取下來的概念嗎 還有就是6,6和4,4是怎麼來的 6,6和4,4都是父或子其中一個沒執行到才有的結果吧? 求解 抱歉問的超基本 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.47.80.70 ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1550560998.A.57D.html ※ 編輯: sooge (114.47.80.70), 02/19/2019 15:26:35
eric131204: 先各自+1-1 然後父assign 子再assign 就是6,6 02/19 15:35
sooge: 我確認一下 assign過後是不是兩個值必會一樣 02/19 15:39
sooge: 很像不對....這樣父assign兩個都變4,4了 02/19 15:44
seika555: https://i.imgur.com/ZaGKVt8.jpg 02/19 15:46
seika555: 把他拆開看比較好看 有錯請指正 02/19 15:48
seika555: 5 4那個就自己畫畫看,應該畫不太出來,因為中間就有一 02/19 15:50
seika555: 個人要先print了 02/19 15:50
eric131204: 共享變數assign完會一樣啊 只是看誰最後assign而已 02/19 15:51
sooge: 哦懂了! 謝謝樓上兩位大大的回答 感激不盡 02/19 15:57
TWkobe: 你要記得多process搶變數 沒有保護會不知道誰先取得 02/19 16:55
TWkobe: 誰先寫回 所以才有多答案 02/19 16:55
sooge: 好的 謝謝台灣kobe 02/19 17:38