多Worker函数
提示
- iOS的js引擎天生是单线程模式,无法实现多线程。
- 这里我们使用多个jsvm的方式实现多个worker进行异步干不同的事情。
- 多jsvm代表这启动多个不同的js虚拟机,在iOS进程中运行,相互之间进程数据是隔离的。
- 每个jsvm独立运行,会将脚本都全部重新加载一次,直到运行运行到main.js中,所以需要通过getCurrentWorkerName函数获取worker名称,分流到不同函数做不同业务
- 每个jsvm之间的数据交互,可以通过一个worker写入到文件,然后另外一个worker进行读取,进行业务处理
- 主脚本jsvm的名称是mainWorker,其他的worker可以自己命名,但是不要用中文、特殊字符等