SOUI官方论坛

 找回密码
 立即注册
查看: 869|回复: 6

win32线程池同步某一个线程任务的思维

  [复制链接]

该用户从未签到

3

主题

13

帖子

200

积分

02:00元婴期

Rank: 3Rank: 3

积分
200
发表于 2019-8-20 19:04:33 | 显示全部楼层 |阅读模式
本帖最后由 a10039901 于 2019-8-21 10:37 编辑

线程池同步某一个线程任务的思维
最近在学习win32的多线程设计,想设计一个线程池。最初同步方案是

{

   线程池任务堆入->创建锁并主线程加锁
   线程池任务结束->子线程解锁
}

{
    主线程join方法        ->主线程加锁
    主线程join方法        ->主线程解锁
    主线程delete锁
}
这种join方法可以考虑到任务执行完成,任务执行中,任务执行前三种状态。
但是只有linux才能编译通过。window不允许同一个线程上两次锁,防止死锁。
在win32下可以使用事件达成同步,事件是状态,稳定性好
{
    线程池任务堆入->主线程create事件
    线程池任务结束->setEvent
}
{
    主线程join方法  ->主线程WaitForSingleObject()
    主线程CloseHandle()
}
代码就不放了 路子很野 如果有需要在群里找我拿

该用户从未签到

4

主题

67

帖子

1388

积分

06:00合体期

Rank: 6Rank: 6

积分
1388
发表于 2019-8-21 09:26:45 | 显示全部楼层
谢谢楼主分享,论坛有你更精彩

该用户从未签到

4

主题

58

帖子

594

积分

04:00化神期

Rank: 4

积分
594
发表于 2019-8-21 10:37:02 | 显示全部楼层
精彩.jpg
回复

使用道具 举报

  • TA的每日心情
    开心
    2020-4-15 08:35
  • 签到天数: 9 天

    [LV.3]偶尔看看II

    38

    主题

    393

    帖子

    2414

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    2414

    突出贡献优秀版主

    发表于 2019-8-21 11:30:19 | 显示全部楼层
    精彩.***.n1234.jpg
  • TA的每日心情
    奋斗
    7 小时前
  • 签到天数: 76 天

    [LV.6]常住居民II

    13

    主题

    112

    帖子

    3078

    积分

    08:00大乘期

    Rank: 8Rank: 8

    积分
    3078
    发表于 2019-8-21 11:41:43 | 显示全部楼层
    精彩.avi
    回复

    使用道具 举报

    该用户从未签到

    10

    主题

    41

    帖子

    879

    积分

    04:00化神期

    Rank: 4

    积分
    879
    发表于 2019-8-22 09:26:56 | 显示全部楼层
    snis-123精彩

    该用户从未签到

    0

    主题

    2

    帖子

    51

    积分

    24:00金丹期

    Rank: 2

    积分
    51
    发表于 2019-9-10 11:57:41 | 显示全部楼层
    解说的很漂亮
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|手机版|小黑屋|SOUI官方论坛 ( 粤ICP备18103663号-2 )

    GMT+8, 2020-6-2 16:29

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

    快速回复 返回顶部 返回列表