亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

麻煩幫忙講解你們對這段代碼的理解

麻煩幫忙講解你們對這段代碼的理解

C#
烙印99 2023-03-02 14:10:21
代碼:…… //創建了三個線程for(int i = 0; i < 5; i++){lock(this){addSum += 2;Thread.Sleep(1);Console.WriteLine(Thread.CurrentThread.Name + ", 執行第 "+ i + "次, addSum = " + addSum);}}問題: 怎么理解lock(){}中的Sleep(1),如果 線程1進入到lock中執行,遇到sleep(1)就休眠1毫秒,這時候其他線程怎么也能進入lock中執行,lock不是實現線程間的互斥嗎?
查看完整描述

2 回答

?
慕斯王

TA貢獻1864條經驗 獲得超2個贊

別的線程進不來,得等從lock出去才行。你把1改成1000就能看出來了。

查看完整回答
反對 回復 2023-03-06
?
慕勒3428872

TA貢獻1848條經驗 獲得超6個贊

Thead.Sleep并不釋放線程,別的線程不可能進來的

查看完整回答
反對 回復 2023-03-06
  • 2 回答
  • 0 關注
  • 92 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號