aardio 文档

thread.manage 库模块帮助文档

thread 成员列表

thread.manage

线程管理器

thread.manage()

创建线程管理器。
可使用一个参数指定线程池大小,
默认为 63,该值必须小于 64

返回对象:threadMgrObject

ThreadMgrCbLiteObject 成员列表

ThreadMgrCbLiteObject.onEnd

ThreadMgrCbLiteObject.onEnd = function(){
    /*线程结束回调此函数,无参数。  
必须调用 thread.manage 对象的 waitOne 或 waitClose 函数  
才会触发 onEnd 回调函数*/   
}

ThreadMgrCbObject 成员列表

ThreadMgrCbObject.onEnd

ThreadMgrCbObject.onEnd = function(...){
    /*线程结束回调此函数,参数为线程执行函数返回的值。  
必须调用 thread.manage 对象的 waitOne 或 waitClose 函数  
才会触发 onEnd 回调函数*/   
}

threadMgrObject 成员列表

threadMgrObject.busy()

如果线程池里仍有未关闭的线程句柄返回 false,否则返回 true 。
必须调用 waitOne 或 waitClose 函数才会自动关闭已结束的线程句柄

threadMgrObject.create

创建线程,
如果线程池已满会自动等待其他线程结束,并自动关闭已结束的线程句柄

threadMgrObject.create()

返回对象:ThreadMgrCbObject

threadMgrObject.create(线程执行函数,任意个启动参数)

创建线程。
此函数参数与 thread.create 函数的参数一致。

返回对象可指定 onEnd 成员函数,
线程结束将线程函数返回值作为参数回调 onEnd 函数。
必须调用 thread.manage 对象的 waitClose 函数
才会触发 onEnd 回调函数

threadMgrObject.createLite

创建线程,但忽略线程执行函数的返回值。
如果线程池已满会自动等待其他线程结束,并自动关闭已结束的线程句柄

threadMgrObject.createLite()

返回对象:ThreadMgrCbLiteObject

threadMgrObject.createLite(线程执行函数,任意个启动参数)

创建线程但忽略线程执行函数的返回值。
此函数参数与 thread.create 函数的参数一致。

返回对象可指定 onEnd 成员函数,
线程函数结束将回调 onEnd 函数,回调函数无参数。
必须调用 thread.manage 对象的 waitClose 函数
才会触发 onEnd 回调函数

threadMgrObject.createSuspended()

创建线程并且暂停执行
如果线程池已满会自动等待其他线程结束,并自动关闭已结束的线程句柄

返回对象:ThreadMgrCbObject

threadMgrObject.createSuspended(线程执行函数,任意个启动参数)

创建线程并且暂停执行。
此函数参数与 thread.create 函数的参数一致。

返回对象可指定 onEnd 成员函数,
线程结束将线程函数返回值作为参数回调 onEnd 函数。
必须调用 thread.manage 对象的 waitClose 函数
才会触发 onEnd 回调函数

threadMgrObject.quitMessage()

向所有线程发送 _WM_QUIT 消息
线程内 win.delay 函数可接受该消息并返回 false 值

threadMgrObject.resume()

所有线程继续执行

threadMgrObject.suspend()

所有线程暂停。
注意线程是否正在使用互斥锁

threadMgrObject.waitClose()

等待所有线程返回,不阻塞界面线程消息处理。
并关闭所有线程句柄。

添加线程以后,必须调用 waitClose 函数

threadMgrObject.waitOne()

等待任一线程返回,不阻塞界面线程消息处理。
并关闭已结束的线程句柄。
失败返回 null

waitClose 函数实际上循环调用 waitOne 函数。

Markdown 格式