关于线程信号量

信号句柄 = CreateSemaphoreA  创建一个信号  返回信号句柄  ,如果关闭后,可以再次调用这个函数

参数1:可以为0   把类型改成整数型

参数2:设置为0的话,一开始让WaitForSingleObject进入等待状态

参数3:可以设置为100,如果参数2值超过参数3,则WaitForSingleObject无效

参数4:可以随便写一个字符串,不影响(高手勿笑。。。)

 

WaitForSingleObject(信号句柄,-1)

设置-1,需要ReleaseSemaphore释放信号以后才会取消等待

 

 

 

ReleaseSemaphore(信号句柄 ,1,0)

释放信号,也就是让CreateSemaphoreA参数2加1

 

CloseHandle (信号句柄)  关闭信息    可以重新创建,..关闭后 waitfor 就无效了,不会再等待.除非重新生成了这个信号

 

OpenSemaphoreA()

重新生成一个信号句柄,建立一个新的信号

 

 

.版本 2
.支持库 spec

程序集测试 = API_创建信号机 (0, 3, 100, “65465”)
CloseHandle (程序集测试)
程序集测试 = API_创建信号机 (0, 3, 100, “65423265”)
.判断循环首 (真)
    WaitForSingleObject (程序集测试, -1)
    调试输出 (“测试信号”)
    延迟 (1000)
.判断循环尾 ()
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值