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

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ### 考慮為并發設計的語言 通常,請謹慎地使用并發。 如果需要使用它,請嘗試使用最現代的方法:并行流或**CompletableFutures**。 這些功能旨在(假設你不嘗試共享內存)使你擺脫麻煩(在Java的世界范圍內)。 如果你的并發問題變得比高級Java構造所支持的問題更大且更復雜,請考慮使用專為并發設計的語言,僅在需要并發的程序部分中使用這種語言是有可能的。 在撰寫本文時,JVM上最純粹的功能語言是Clojure(Lisp的一種版本)和Frege(Haskell的一種實現)。這些使你可以在其中編寫應用程序的并發部分語言,并通過JVM輕松地與你的主要Java代碼進行交互。 或者,你可以選擇更復雜的方法,即通過外部功能接口(FFI)將JVM之外的語言與另一種為并發設計的語言進行通信。[^11] 你很容易被一種語言綁定,迫使自己嘗試使用該語言來做所有事情。 一個常見的示例是構建HTML / JavaScript用戶界面。 這些工具確實很難使用,令人討厭,并且有許多庫允許你通過使用自己喜歡的語言編寫代碼來生成這些工具(例如,**Scala.js**允許你在Scala中完成代碼)。 心理上的便利是一個合理的考慮因素。 但是,我希望我在本章(以及附錄:[并發底層原理](./Appendix-Low-Level-Concurrency.md))中已經表明Java并發是一個你可能無法逃離很深的洞。 與Java語言的任何其他部分相比,在視覺上檢查代碼同時記住所有陷阱所需要的的知識要困難得多。 無論使用特定的語言、庫使得并發看起來多么簡單,都要將其視為一種妖術,因為總是有東西會在你最不期望出現的時候咬你。
                  <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>

                              哎呀哎呀视频在线观看