Dedicated Worker && Shared Worker

worker 线程的创建的是异步的
postMessage 消息交互由内核调度(即可以在创建时立即使用)

通信内容,可以是文本,也可以是对象,也可以交换二进制数据,对象是深拷贝,不是引用。但是,如果用拷贝方式发送二进制数据,会造成性能问题,所以 js 允许主线程把二进制数据直接转移给子线程,转移后主线程无法再使用这些数据,这种方式叫 Transferable Objects。
// SharedArrayBuffer 除外

worker线程不能获得下列对象
1)DOM对象
2)window对象
3)document对象
4)parent对象


Shared Worker:多个页面之间可以共享