搜尋

首頁  >  問答  >  主體

java - 多執行緒為什麼會存取同一個資源

如題,多執行緒本質上是對cpu時間片合理調度分配實作看上去的並發,但是實際上一個時刻還是只有一條指令執行,為什麼會出現多個執行緒存取一個資源的情況?

PHP中文网PHP中文网2729 天前1051

全部回覆(2)我來回復

  • 扔个三星炸死你

    扔个三星炸死你2017-06-12 09:29:45

    因為對資源的一個操作可能是由多條指令組成,只有當這多條指令執行完了,對資源的操作才會完成,如果你還沒把這些指令執行完,就切換至其他線程,宏觀上就會出現多個執行緒存取同一個資源的情況

    而且,誰說實際上一個時刻還是只有一條指令執行的?誰說多線程只是看上去的並發?難道閣下不知道有多核CPU的存在!!!!!!

    回覆
    0
  • 淡淡烟草味

    淡淡烟草味2017-06-12 09:29:45

    因為有多核cpu

    回覆
    0
  • 取消回覆