一个实例明白AutoResetEvent和 ManulResetEvent的用法
public static AutoResetEvent waitHandler;
public static ManualResetEvent manualWaitHandler;
public static void ThreadPoolMain() {
waitHandler = new AutoResetEvent(false);
manualWaitHandler = new ManualResetEvent(false);
// Queue the task.
ThreadPool.QueueUserWorkItem(new WaitCallback(ThreadProc));
ThreadPool.QueueUserWorkItem(new WaitCallback(ThreadProc2));
Console.WriteLine("Main thread does some work, then waiting....");
manualWaitHandler.WaitOne();
//waitHandler.Reset();
manualWaitHandler.WaitOne();
//waitHandler.Reset();
Console.WriteLine("Main thread exits.");
}
// This thread procedure performs the task.
public static void ThreadProc(Object stateInfo) {
Thread.Sleep(1000);
Console.WriteLine("Hello from the thread pool.");
//waitHandler.Set(); //
manualWaitHandler.Set();//过去了,但是没关,也就是说 信号还是开着的。
//manualWaitHandler.Reset();
}
public static void ThreadProc2(object stateInfo) {
Thread.Sleep(100);
Console.WriteLine("Hello from the thread Pool2");
//waitHandler.Set();
manualWaitHandler.Set();//过去了,但是没有关
}
}
本文出自 “Xhinker” 博客,转载请与作者联系!
转帖:http://xhinker.blog.51cto.com/640011/180377
转载于:https://www.cnblogs.com/kevinGao/archive/2011/11/29/2270745.html
一个实例明白AutoResetEvent和 ManulResetEvent的用法相关推荐
- python回调函数实例详解_Python回调函数用法实例详解
本文实例讲述了Python回调函数用法.分享给大家供大家参考.具体分析如下: 一.百度百科上对回调函数的解释: 回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函 ...
- 模拟退火算法系列之(二):一个实例
为什么我的眼里常含泪水?因为我有一个算法不会.为了节约点眼泪,今天我们就来介绍著名的模拟退火算法(Simulated Annealing),它是一种基于蒙特卡洛思想设计的近似求解最优化问题的方法. 这 ...
- linux ksh 用户名,实例讲解Linux中ksh的用法
实例讲解Linux中ksh的用法 发布时间:2008-02-18 20:46:01来源:红联作者:Modegle 熟悉Linux的朋友肯定都知道bash,它是Linux默认的命令行解释程序,熟悉Sol ...
- 限制程序只打开一个实例(转载)
当我们在做一些管理平台类的程序(比如Windows的任务管理器)时,往往需要限制程序只能打开一个实例.解决这个问题的大致思路很简单,无非是在程序打开的时候判断一下是否有与自己相同的进程开着,如果有,则 ...
- 众所周知,static修饰的成员只实例化一次,而string类型每次赋值都会重新创建一个实例,那么用static修饰string呢?...
string 类型每次实例化都会重新创建一个实例: 解释:string 类型重载了运算符 "=" ,每次 "=" 操作都是一次 "new". ...
- iOS的界面触摸事件处理机制,然后用一个实例来说明下应用场景.
2019独角兽企业重金招聘Python工程师标准>>> 主要是记录下iOS的界面触摸事件处理机制,然后用一个实例来说明下应用场景. 一.处理机制 界面响应消息机制分两块,(1)首先在 ...
- docker 主进程 日志_[docker]从一个实例,一窥docker进程管理
在Docker中,进程管理的基础是Linux内核的PID命名空间技术.在不同的PID命名空间下,可以有相同的PID. Linux内核为所有的PID命名空间维护了一个树状的数据结构,最顶层是系统初始化时 ...
- 让Java程序只运行一个实例
一个程序可以在内存里面存在多个运行实例,比如,你可以打开多个微软的Word程序.但是,有些时候我们需要控制程序运行的实例只有一个,也就是说,该程序同一时刻在内存里面运行的只有一个实例.这样当这个程序在 ...
- php单例模式的实例,PHP的单例模式的一个实例_php
这篇文章对于php单例模式的解释并不一定完善!只是举一个实例而已,目的是让我自己通过一个实例可以加深对单例模式的理解!在此,仅供参考! 单例:可以简单的理解是通过一个类,只能实例化单个对象,不能实例化 ...
- 从一个实例,一窥docker进程管理
在Docker中,进程管理的基础是Linux内核的PID命名空间技术.在不同的PID命名空间下,可以有相同的PID. Linux内核为所有的PID命名空间维护了一个树状的数据结构,最顶层是系统初始化时 ...
最新文章
- 图灵奖得主Hamming对于少数人获得重大成果原因的思考,送给此刻克服迷惘坚持前行的你...
- python数学知识_数学知识回顾01
- 哈佛博士生经验分享:10种方法让你在读博阶段更加轻松愉快
- 服务器出生点配置文件,服务器设置出生点
- HIBERNATE与 MYBATIS的对比
- C# 类型参数的约束
- STM32——HAL版——串口发送字符串函数
- macbook 安装iperf_三分钟学会iperf3的使用
- insight face数据打包(一):LFW
- python快捷键失灵
- linux的dd命令与cp,dd命令中seek和skip的用法-Linux下挂载 windows 共享的命令-学习history命令的使用方法_169IT.COM...
- java中try-catch-finally的使用
- 【37期】请你详细说说类加载流程,类加载机制及自定义类加载器
- C语言学习笔记—链表(四)链表的删除
- mysql identity sqlserver_mysql和sqlserver的区别
- 三次样条插值(Spline插值)
- 杰里之AD140录音编码接口【篇】
- Why Memory Barriers中文翻译(下)
- Java零基础学习全套视频笔记
- linux就该这么学pdf+下载链接