<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>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                當運行一個 Swing?程序時,會自動創建三個線程。 ## 1.主線程 負責執行main?方法。 ## 2. toolkit?線程 負責捕捉系統事件,比如鍵盤、鼠標移動等,程序員不會有任何代碼在這個線程上執行。Toolkit線程的作用是把自己捕獲的事件傳遞給第三個線程,也就是事件派發線程。 ## 3.?事件派發線程(EDT,Event Dispatcher Thread) 顧名思義是用來派發事件(根據事件找到對應的事件處理代碼)的線程。EDT接收來自 toolkit 線程的事件,并且將這些事件組織成一個隊列,EDT的工作內容就是將這個隊列中的事件按照順序派發給相應的事件監聽器,并且調用事件監聽器中的回調函數,這也意味著,所有的事件處理代碼都是在EDT而不是主線程中執行。 上面說到EDT中維護了一個事件的隊列,并且它們是按照順序派發的。由于事件派發是單線程的操作,所以只有等待前面事件監聽器的回調函數執行完畢,才能夠執行組件更新的操作,以及繼續派發后面的事件。這樣導致的一個后果就是:當在一個事件監聽回調函數中做了耗時的操作,那么,界面會因此停住,并且界面上所有控件失效(不可觸發)。 > 解決這個問題的方法是:在事件處理函數中將耗時的操作放到新線程(一般稱之為**工作線程**)中執行,而不是讓其在EDT中執行。 ***** ## 工作線程 任何需時超過30到100毫秒的任務不應放在EDT上執行,否則用戶就會覺察到輸入和界面響應之間的延遲。
                  <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>

                              哎呀哎呀视频在线观看