Soft_Job 板


LINE

有人來信討論最後一題, 我來說明一下當初在面試官邊半提示半猜之後得到的答案和想法 題目基本上在問的是: 有一個變數x,初始值是0 同時開五個thread, 五個thread同時做x = x + 1 那最後五個thread都跑完之後,x的可能最大值與可能最小值是什麼  ※ 引述《frouscy (流浪吧。)》之銘言: : - 請回答下面的code裡面,x可能的最大值和最小值是什麼: : x = 0 # global variable : # thread execution function : def exec(): : for _ in xrange(5): : x = x + 1 : # main function : def main: : for _ in xrange(5): : # launch 5 threads and run the exec function : Thread.run(exec()) 為免防雷,答案請page down ANS: 最小值2,最大值25 解答再防雷XD。 SOLUTION: 25我想很容易理解, 下面解釋一下2是怎麼來的 其實要理解這個2並不需要5個thread, 只要看兩個thread就足夠了 以下T1代表第一個Thread,T2代表第二個Thread r0代表從x讀0進來,w1代表寫1到x裡面去 T1 r0 T2 r0 T1 w1 T1 r1 T1 w2 T1 r2 T1 w3 T1 r3 T1 w4 T2 w1 T1 r1 T2 r1 T2 w2 T2 r2 T2 w3 T2 r3 T2 w4 T2 r4 T2 w5 T1 w2 這樣最後就會得到最小值2 如果Thread在兩個以上的話, 其他幾個thread就是隨便在T1 r1到T1w2之間隨便亂做 結果都不會被影響到 --
QR Code



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.130.162.20
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1492488698.A.4F3.html
1F:→ robler: cool 我本來猜5 04/18 12:29
2F:推 maxqq: 有道理,兩條以上可能會發生最小的情形 04/18 13:02
3F:→ doomleika: 不是25? Python的global intepreter lock應該會避免這 04/18 13:57
4F:→ doomleika: 種情況 04/18 13:57
5F:→ frouscy: 考官當時有說這是psuedo code, 只是用python語法而已 04/18 14:15
6F:→ Chikei: python也只有CPython有GIL XD 04/18 14:16
7F:→ frouscy: 要問的就是我中文描述的,就不用用語言特性想了 04/18 14:18
8F:推 doomleika: ok thanks 04/18 14:38
9F:推 lininu: 沒想過他讀出來的時候會被另一個已經讀出來的寫回去… 04/18 19:15
10F:→ mike7689: 我看不太懂題目,是一個thread做5次X=X+1嗎? 04/19 07:38
11F:推 sorryla: 5個thread 每個thread做五次 04/19 08:45
12F:→ doomleika: 樓上正解 04/19 10:10
13F:→ mike7689: 了解了 我還在想為何max是25 原來是這樣啊 04/19 10:57







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:iOS站內搜尋

TOP