a = offThreadCompileToStencil("");
stencilA = finishOffThreadStencil(a);
evalStencil(stencilA);
assertFails(() => finishOffThreadStencil(a));
a = offThreadCompileModuleToStencil("");
stencilA = finishOffThreadStencil(a);
assertFails(() => finishOffThreadStencil(a));
instantiateModuleStencil(stencilA);
a = offThreadDecodeStencil(encodeScript(""));
stencilA = finishOffThreadStencil(a);
evalStencil(stencilA);
assertFails(() => finishOffThreadStencil(a));
// Test running multiple jobs.
a = offThreadCompileToStencil("1");
b = offThreadCompileToStencil("2");
stencilA = finishOffThreadStencil(a);
stencilB = finishOffThreadStencil(b);
assertEq(evalStencil(stencilA), 1);
assertEq(evalStencil(stencilB), 2);
a = offThreadCompileModuleToStencil("");
b = offThreadCompileModuleToStencil("");
stencilA = finishOffThreadStencil(a);
stencilB = finishOffThreadStencil(b);
assertEq(typeof instantiateModuleStencil(stencilA), "object");
assertEq(typeof instantiateModuleStencil(stencilB), "object");
a = offThreadDecodeStencil(encodeScript("3"));
b = offThreadDecodeStencil(encodeScript("4"));
stencilA = finishOffThreadStencil(a);
stencilB = finishOffThreadStencil(b);
assertEq(evalStencil(stencilA), 3);
assertEq(evalStencil(stencilB), 4);
// Test many jobs.
const count = 100;
let jobs;
jobs = new Array(count); for (let i = 0; i < jobs.length; i++)
jobs[i] = offThreadCompileToStencil(`${i} * ${i}`); for (let i = 0; i < jobs.length; i++) {
stencil = finishOffThreadStencil(jobs[i]);
assertEq(evalStencil(stencil), i * i);
}
jobs = new Array(count); for (let i = 0; i < jobs.length; i++)
jobs[i] = offThreadCompileModuleToStencil(""); for (let i = 0; i < jobs.length; i++) {
stencil = finishOffThreadStencil(jobs[i]);
assertEq(typeof instantiateModuleStencil(stencil), "object");
}
jobs = new Array(count); for (let i = 0; i < jobs.length; i++)
jobs[i] = offThreadDecodeStencil(encodeScript(`${i} * ${i}`)); for (let i = 0; i < jobs.length; i++) {
stencil = finishOffThreadStencil(jobs[i]);
assertEq(evalStencil(stencil), i * i);
}
Messung V0.5
¤ Dauer der Verarbeitung: 0.0 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.