第十五屆 優選

web
網頁的另一個大腦:從基礎到進階掌握 Web Worker 技術
bcjohn

系列文章

DAY 11

BroadcastChannel

BroadcastChannel 是 HTML 規範中用來讓多個線程互相溝通的方式,不像前兩天介紹的 MessageChannel 只能做到兩者之間的通訊,Br...

DAY 12

Transferable objects - Stream

前端大部分接觸到的資料格式最常見的就是 json,而 Stream 對前端來說應該是個比較陌生的概念,但每次對後端呼叫 api 取得資料的時候,回來的資料格式就...

DAY 13

Transferable objects - ImageBitmap

ImageBitmap 表示一種能夠被繪製到 canvas 元素上的位置圖像,通常是使用 createImageBitmap() 的方式產生 可以看到 Imag...

DAY 14

ImageData

昨天提到了 ImageBitmap 是一種能夠被繪製到 canvas 元素上的位置圖像,今天我們要來講另一個很像的用法 ImageData,ImageData...

DAY 15

在 Web worker 中操作圖像的 ImageData

昨天介紹了 ImageData 的用法,今天來寫個範例,看看如何在 Web worker 中處理 ImageData,並增進效能吧。 範例 Demo 目的 利...

DAY 16

Transferable objects - OffscreenCanvas

昨天的範例中顯示當圖片的解析度很高時,執行 getImageData 會很久的問題 (我的電腦 Chrome 瀏覽器耗時 200~300ms 左右),但如果想將...

DAY 17

在 Web worker 中使用 OffscreenCanvas

昨天學習到使用 OffscreenCanvas 在 Web worker 中操作圖像,避免主線程處理 canvas 的耗時操作導致畫面卡頓,今天打算繼續優化前兩...

DAY 18

共享的 Web worker - Shared worker

在今天以前所介紹的都是一般較常用到的 Dedicated worker,Dedicated worker 只能被當下創建的線程使用,而 Shared worke...

DAY 19

Shared worker 的生命週期

昨天介紹了 Shared worker 的基本用法,今天打算寫個範例來了解 Shared worker 的生命週期 目的 了解如何使用 Shared work...

DAY 20

在 Javascript 中共享記憶體 - SharedArrayBuffer

在這 Web worker 系列文的一開始就提到 worker 線程之間的資料傳遞使用 postMessage const worker = new Worke...