SOUI官方论坛

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

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

  [复制链接]
  • TA的每日心情

    2020-6-5 23:05
  • 签到天数: 1 天

    [LV.1]初来乍到

    4

    主题

    15

    帖子

    167

    积分

    24:00金丹期

    Rank: 2

    积分
    167
    发表于 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

    帖子

    604

    积分

    04:00化神期

    Rank: 4

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

    使用道具 举报

  • TA的每日心情
    奋斗
    2022-7-4 09:45
  • 签到天数: 28 天

    [LV.4]偶尔看看III

    59

    主题

    590

    帖子

    5517

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    5517

    突出贡献优秀版主

    发表于 2019-8-21 11:30:19 | 显示全部楼层
    精彩.***.n1234.jpg
  • TA的每日心情
    慵懒
    2024-1-24 14:08
  • 签到天数: 313 天

    [LV.8]以坛为家I

    13

    主题

    114

    帖子

    6011

    积分

    08:00大乘期

    Rank: 8Rank: 8

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

    使用道具 举报

    该用户从未签到

    10

    主题

    41

    帖子

    879

    积分

    04:00化神期

    Rank: 4

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

    该用户从未签到

    1

    主题

    9

    帖子

    117

    积分

    24:00金丹期

    Rank: 2

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

    本版积分规则

    QQ|Archiver|手机版|小黑屋|SOUI官方论坛

    GMT+8, 2024-5-19 01:55

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

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