搜尋

首頁  >  問答  >  主體

在html5中,多线程worker和异步ajax有什么区别?

在html5中,多线程worker和异步ajax有什么区别?

高洛峰高洛峰2767 天前435

全部回覆(2)我來回復

  • PHP中文网

    PHP中文网2017-04-17 13:31:51

    多執行緒是屬於並發範疇,而異步是資料請求方式的範疇,與同步相對。

    回覆
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-17 13:31:51

    同意樓上的解釋。它們之間的差異大了,從具體使用場景來說,耗CPU的任務可以移到worker中處理,ajax主要是IO費時間,為了確保不讓程式碼阻塞,所以非同步處理,等資料到達時再通知程式.這是在html5中的變通方法,因為ajax是比較早實現的,而worker是比較新的一個概念,可以說worker的功能是覆蓋ajax的,只是由於HTML的不斷發展自然出現了這樣的問題。
    在其它語言中,一般費時任務都放在其它線程中,以避免阻塞主線程。而不管它是費CPU還是費IO。
    總之,這都是HTML的錯。你大可以把網頁請求也放在worker中處理,但不幸的是,支援worker的瀏覽器並不多。

    回覆
    0
  • 取消回覆