aardio 文档

thread.works 库模块帮助文档

thread 成员列表 #

thread.works #

线程工作项管理

thread.works() #

返回对象:threadWorkObject

thread.works(线程数,工作函数,等待延时,初始化函数,...) #

thread.works(线程数,工作函数,等待延时,初始化函数,...works( 20,  
    function(arguments,...) {  
        /*arguments为线程任务传递的参数,  
其他参数为创建thread.work时的附加参数,  
这些附加参数也会传递给初始化函数*/  
        return "返回值"  
    }   
);

threadWorkObject 成员列表 #

threadWorkObject.busy() #

是否有未完成任务

threadWorkObject.clear() #

清空已添加的任务

threadWorkObject.each #

for( idx,args in threadWorkObject.each() ){
    /*遍历所有待执行任务,  
该函数会暂停所有任务*/
}

threadWorkObject.finished() #

是否有未完成任务或未读取的任务返回值

threadWorkObject.getHandleById(线程ID) #

使用线程ID返回线程句柄
不可关闭该句柄

threadWorkObject.peek() #

是否有线程完成了新的任务并返回了新的值,
注意如果线程返回的是null将被忽略

threadWorkObject.pop() #

弹出工作函数完成任务后的返回值,
注意如果线程返回的是null将被忽略

threadWorkObject.push() #

添加调用实参到任务列表尾部
可使用table对象传递多个参数给任务函数
工作函数将自动获取参数并执行任务,
此函数会等待空闲线程,等待时界面线程仍然可以处理窗口消息

threadWorkObject.queueCount() #

排队等候执行的任务数目

threadWorkObject.quit() #

通知所有线程退出
并等待线程关闭

threadWorkObject.resume() #

所有线程继续执行
可选在参数中指定线程ID

threadWorkObject.suspend() #

所有线程暂停
可选在参数中指定线程ID
注意线程是否正在使用互斥锁

threadWorkObject.update(索引,参数) #

更新任务参数\该函数只能在each循环内部使用

threadWorkObject.wait() #

等待所有任务完成,
可指定一个回调函数作为参数接收工作项返回值

建议在界面线程使用定时器替代此函数

threadWorkObject.waitClose() #

等待所有任务完成
通知所有线程退出,并等待所有线程关闭.
可指定一个回调函数作为参数接收工作项返回值

建议在界面线程使用定时器替代此函数

Markdown 格式