<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                [TOC] # 八種操作 * lock(鎖定): 作用于主內存的變量,把一個變量標識為一條線程獨占狀態 * unlock(解鎖): 作用于主內存的變量,把一個處于鎖定狀態的變量釋放出來,釋放后的變量才可以被其他線程鎖定 * read(讀取): 作用于主內存的變量,把一個變量值從主內存傳輸到線程的工作內存中,以便隨后的load動作使用 * load(載入): 作用于工作內存的變量,它把read操作從主內存中得到的變量值放入工作內存的變量副本中 * use(使用): 作用于工作內存的變量,把工作內存中的一個變量值傳遞給執行引擎 * assign(賦值): 作用于工作內存的變量, 它把一個從執行引擎接收到的值賦值給工作內存的變量 * store(存儲): 作用于工作內存的變量,把工作內存中的一個變量的值傳送到主內存中,以便隨后的write的操作 * write(寫入): 作用于主內存的變量, 把store操作從工作內存中一個變量的值傳送到主內存的變量中 # 同步規則 * 如果要把一個變量從主內存中復制到工作內存,就需要按順尋地執行read和load操作,如果把變量從工作內存中同步回主內存中,就要按順序執行store和write操作.但java內存模型只要求上述操作必須按順序執行,而沒有保住必須是連續執行 * 不允許read和load, store和write操作之一單獨出現 * 不允許一個線程丟棄他的最近assign操作,即變量在工作內存中改變之后必須同步到主內存中 * 不允許一個線程無原因地(沒有發生過任何assign操作)把數據從工作內存同步回主內存中 * 一個新的變量只能在主內存中誕生,不允許在工作內存中直接使用一個未被初始化(load或assign)的變量.即就是對一個變量實施use和store操作之前,必須先執行過了assign和load操作 * 一個變量在同一時刻只允許一條線程對其進行lock操作,但lock操作可以被同一條線程重復多次,多次執行lock后,只有執行相同次數的unlock操作,變量才會被解鎖.lock和unlock必須成對出現 * 如果對一個變量執行lock操作,將會清空工作內存中此變量的值,在執行引擎使用這個變量前需要重新執行load或assign操作初始化變量的值 * 如果一個變量事先沒有被lock操作鎖定,則不允許對他執行unlock操作,也不允許去unlock一個被其他線程鎖定的變量 * 對一個變量執行unlock操作之前,必須先把此變量同步到主內存中(執行store和write操作) # 圖解 ![](https://img.kancloud.cn/d9/c8/d9c82ba437d68094c9700240c2e96083_1536x692.png)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看