zoukankan      html  css  js  c++  java
  • ManualResetEvent的理解

            首先弄清楚, ManualResetEvent 是WaitEventHandler(等待事件句柄)的一个子类。
            ManualResetEvent 允许线程通过发信号互相通信。通常,此通信涉及一个线程在其他线程进行之前必须完成的任务。
           可以通过将布尔值传递给构造函数来控制 ManualResetEvent 的初始状态,如果初始状态处于终止状态,为 true;否则为 false。
           关于Set()/ReSet()/WaitOne()
    ReSet():将 ManualResetEvent 事件设置为非终止状态,即:保持等待。导致其他线程阻塞。或这样理解:reset()方法就是为waitone()准备的,reset()相当于开始初始化为阻止状态(false)。

    Set():将 ManualResetEvent 事件设置为终止状态,即:不再保持等待。发出让等待线程可以继续进行的信号。

    WaitOne():阻止当前线程,等待接收信号。当某个线程执行Set命令的时候,WaitOne接收这个信号,继续执行。

  • 相关阅读:
    Codeforces 474B. Worms
    Codeforces 577A
    Codeforces 455A
    Codeforces 540A
    Codeforces 832A. Sasha and Sticks
    51Nod 1137 矩阵乘法
    51Nod 1118 机器人走方格
    Tomcat部署项目的三种方式
    【Linux】CentOS7下安装JDK详细过程
    Linux上安装rz和sz命令
  • 原文地址:https://www.cnblogs.com/huacw/p/2065467.html
Copyright © 2011-2022 走看看