/**********************************************
╚description:
╚作者: 麒麟社
╚时间: 2021-09-13 23:22:53
╚名称: Autojs 线程
|多任务在同时执行的情况下需要用到线程
***********************************************/
// 开启一个线程
threads.start(function(){
//执行的代码
console.log("这里是一个线程")
})
// 线程定时任务执行
threads.start(function(){
setInterval(function(){
log("这个是2秒执行一次的定时循环输出");
}, 2000);
})
/**
* 线程通讯
* 线程你们的数据是不能直接在线程以外直接调用,而业务逻辑需要调用线程的业务数据
* 需要用到线程通讯
*/
var sum = threads.disposable();//声明一个变量来接受 线程通讯返回的数据
threads.start(function(){
var s = 0;
//用for循环做1-100的阶加
for(var i = 1; i <= 100; i++){
s += i;
}
//将计算好的结果通知主线程接收结果
sum.setAndNotify(s);
});
//blockedGet()用于等待结果
log("结果= " + sum.blockedGet());