加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

windows – WaitForSingleObject是否放弃了线程的时间片?

发布时间:2020-12-13 20:25:34 所属栏目:Windows 来源:网络整理
导读:我正在C中制作win32程序. 当你有多个线程在运行,并且其中一个线程正在等待事件时(例如使用WaitForSingleObject()),该线程是否仍然获得其完整的CPU时间片? 换句话说,操作系统是否知道线程不需要其时间片,直到其中一个事件被发出信号? 是的 – 线程被阻塞,直
我正在C中制作win32程序.

当你有多个线程在运行,并且其中一个线程正在等待事件时(例如使用WaitForSingleObject()),该线程是否仍然获得其完整的CPU时间片?

换句话说,操作系统是否知道线程不需要其时间片,直到其中一个事件被发出信号?

是的 – 线程被阻塞,直到它等待的任何信号被发出信号.该线程在被阻塞时不会被安排运行,因此其他线程将获得所有CPU时间.

请注意,时间片不会进入太多.线程可以在时间片的中间放弃执行,并且(例如)如果它正在等待的内容快速发出信号,它可能会在其原始时间片到期之前再次开始执行.当发出信号时,正在等待它的线程可以立即唤醒,不一定等待时间片的结束(例如,如果正在等待的线程具有比正在运行的线程更高的优先级).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读