quickjs-android
quickjs-android copied to clipboard
await 语法支持有问题,会阻塞后续逻辑
测试代码如下:
jsContext.executeVoidScript("console.log(\"Hello World\");\n" +
"function testAsync(params) {\n" +
" console.log(\"test Async start\");\n" +
" return new Promise(function (resolve, reject) {\n" +
" resolve(\"done\");\n" +
" });\n" +
"}\n" +
"\n" +
"async function main(){\n" +
" var t = await testAsync(11);\n" +
" console.log(\"test finish\"+t);\n" +
"}\n" +
"main();",null);
日志输出如下,test finish 没有输出 D/QuickJS: Hello World D/QuickJS: test Async start
QuickJS对Promise的支持有问题,我这边研究一下,也欢迎你一起研究。
被加到pendingjob里了,参考qjs.c源码,里面有个事件循环,js_std_loop来处理这些job
我也遇到了这个问题,使用Promise不行,请问有什么解决办法吗?