开发者社区> 问答> 正文

对c++多线程编程中信号量的疑惑,求解

最近在写多线程,使用到信号量,对于信号量创建、释放createsemaphore和releasesemaphore中的初始资源数、最大并发数、计数增加个数不解,之前有用过,但都没有深入了解以至于现在模糊不清,最大并发数是指什么线程的最大并发数,自己线程or其他线程?增加的计数如果是2,是不是就相当于调用了两次waitfor函数?恳请熟悉这方面的朋友能给一个更为细致具体的讲解,小女不胜感激图片说明

展开
收起
a123456678 2016-03-09 13:17:03 2082 0
1 条回答
写回答
取消 提交回答
  • 信号量就是限制同时只有1个或多个线程能够运行,数量取决于设置的最大并发数。
    线程首先得申请一个资源才能够运行,运行结束后要释放资源。
    计数增加应该是释放信号量后,信号量的可用个数增加

    2019-07-17 18:55:52
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
使用C++11开发PHP7扩展 立即下载
GPON Class C++ SFP O;T Transce 立即下载
GPON Class C++ SFP OLT Transce 立即下载