<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之旅 廣告
                # 通過協程的方法屏蔽異步同步的區別 ## 同步 SD框架中Task就是一個典型的同步案例。task中不允許調用異步的api。 ## 異步 SD框架中除了task基本都是異步的,異步最好使用異步api達到更高的效率。 ## 如何選擇 在1.6版本之前,task中如果使用mysql和redis都必須調用同步的客戶端,而且同步客戶端和異步客戶端的調用方法以及返回結構都不一樣,這樣model和task的代碼完全無法重用,也更不可能通過task去調用model。 ## 無需選擇 1.6版本后實現了框架進行異步和同步的選擇,1.7版本對于這種新的方式進行了優化和完善。 通過協程的方式寫的代碼可以同時在modle和task中運行。也不用關心同步和異步的寫法不同,他們的調用方式和返回值都保持絕對的一致。 ```php $value = yield $this->redis_pool->getCoroutine()->setex('test', 10, 'testRedis'); ``` 比如這段代碼在model和task中均能被正確的執行。 同時在task中也可以調用model的方法。 ```php $testModel = $this->loader->model('TestModel', $this); $result = yield $testModel->test_task(); ``` 至此難為程序員的異步和同步的區別現在被完美的解決了。
                  <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>

                              哎呀哎呀视频在线观看