Actor并发编程模型
<JS Worker Sample Code>
// Test.js
let count = new SharedArrayBuffer(8);
Image img = [];
function collect(msg) {
img.push(msg.img);
}
let w1 = new Worker(“load-worker.js”);
w1.postmessage( { path:“xxx.jpg”, count: count } );
w1.onmessage = collect;
let w2 = new Worker(“load-worker.js”);
w2.postMessage( { path:“xxx.bmp”, count: count } );
w2.onmessage = collect;
// load-worker.js
onmessage = function (msg) {
Atomics.add(msg.count, 0, 1);
result= ReadImages(msg.path);
postMessage( { img: result } );
}
轻量级Actor实现
Fast TS FFI
TS代码编译
根据TS Class声明及运行时约定,生成TS对象布局描述C/C++头文件以及操作TS对象的native库
Native代码编译
include TS对象头文件以及链接对应库,实现C++代码直接操作TS对象
TS对象操作库中插入类型检查,对象布局如在运行时发生变化,回退慢速路径