aardio 文档

thread.semaphore 库模块帮助文档

thread 成员列表

thread.semaphore

创建或打开信号量对象,
返回对象可传入其他线程使用。

信号量可用于进程或线程间同步

thread.semaphore("信号量对象名称",10)

创建信号量同步对象,可以跨进程使用,
省略名称创建匿名对象,
参数@2指定最大资源计数,
可选参数@3指定初始空闲计数,默认等于最大资源计数,
参数2,参数3仅在首次创建该事件对象是起作用

thread.semaphore()

返回对象:threadSemaphoreObject

thread.semaphore(信号量句柄)

使用句柄直接打开信号量

thread.semaphore(信号量句柄,true)

使用句柄直接打开信号量
添加析构函数负责释放句柄

threadSemaphoreObject 成员列表

threadSemaphoreObject.close()

关闭信号量对象
该函数并不关闭信号量内核对象
当所有引用内核对象的对象关闭,内核对象自动释放

threadSemaphoreObject.conflict

如果信号量对象已存在,此属性为真值
否则为空值

threadSemaphoreObject.release()

线程在处理完共享资源后,
应在离开时调用此函数将可用资源计数加1
可在参数中指定要释放的资源计数(默认为1)
第一个返回值表示函数执行是否成功,
第二个返回值为原来的资源计数

threadSemaphoreObject.wait()

等待可用资源计数大于0,
可选增加一个参数指定超时,以毫秒为单位
注意此函数应与release()函数配对使用
在UI线程中应使用非阻塞的waitOne()函数替代

threadSemaphoreObject.waitOne()

等待可用资源计数大于0,
可选增加一个参数指定超时,以毫秒为单位
注意此函数应与release()函数配对使用

Markdown 格式