C# EventWaitHandle用法
waithander就是用来阻塞当前线程的,然后通过set()方法放开
namespace waithandler
{
class Program
{
//static EventWaitHandle wait = new EventWaitHandle(true, EventResetMode.AutoReset); //自动 中止状态
static EventWaitHandle waitM = new EventWaitHandle(false, EventResetMode.ManualReset);//手动 非终止状态
static void Main(string[] args)
{
Console.WriteLine("1当前时间" + DateTime.Now);
Thread thread = new Thread(S);
thread.Start();
Thread.Sleep(3000);
//wait.Set();//将状态设置为终止状态。
waitM.Set(); //将状态设置为终止状态。
Console.Read();
}
public static void S()
{
waitM.WaitOne(3000); //非终止状态,无限制阻塞线程,不自动改变事件的终止状态
//wait.WaitOne(); //自动返回为终止状态,不阻塞线程,为同一时间
Console.WriteLine("2当前时间" + DateTime.Now);
waitM.WaitOne(3000); //前面的set()将事件手动终止状态,不进行阻塞
// wait.WaitOne(3000); //此时为非终止状态,停顿三秒
Console.WriteLine("3当前时间" + DateTime.Now);
}
}
}
未完待续。。。。。
C# EventWaitHandle用法的更多相关文章
- 多线程EventWaitHandle -戈多编程
在.NET的System.Threading命名空间中有一个名叫WaitHandler的类,这是一个抽象类(abstract),我们无法手动去创建它,但是WaitHandler有三个子类,这三个子类分 ...
- EditText 基本用法
title: EditText 基本用法 tags: EditText,编辑框,输入框 --- EditText介绍: EditText 在开发中也是经常用到的控件,也是一个比较必要的组件,可以说它是 ...
- jquery插件的用法之cookie 插件
一.使用cookie 插件 插件官方网站下载地址:http://plugins.jquery.com/cookie/ cookie 插件的用法比较简单,直接粘贴下面代码示例: //生成一个cookie ...
- Java中的Socket的用法
Java中的Socket的用法 Java中的Socket分为普通的Socket和NioSocket. 普通Socket的用法 Java中的 ...
- [转载]C#中MessageBox.Show用法以及VB.NET中MsgBox用法
一.C#中MessageBox.Show用法 MessageBox.Show (String) 显示具有指定文本的消息框. 由 .NET Compact Framework 支持. MessageBo ...
- python enumerate 用法
A new built-in function, enumerate() , will make certain loops a bit clearer. enumerate(thing) , whe ...
- [转载]Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结
本文对Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法进行了详细的总结,需要的朋友可以参考下,希望对大家有所帮助. 详细解读Jquery各Ajax函数: ...
- 【JavaScript】innerHTML、innerText和outerHTML的用法区别
用法: <div id="test"> <span style="color:red">test1</span> tes ...
- chattr用法
[root@localhost tmp]# umask 0022 一.chattr用法 1.创建空文件attrtest,然后删除,提示无法删除,因为有隐藏文件 [root@localhost tmp] ...
随机推荐
- 编译安装redis-3.2.9(latest stable version)
What is the Redis? Redis is an open source (BSD licensed), in-memory data structure store, used as a ...
- Tomasulo algorithm
https://en.wikipedia.org/wiki/Tomasulo_algorithm#Applications_and_legacy 1, what is Tomasulo algori ...
- MySQL系列(十二)--如何设计一个关系型数据库(基本思路)
设计一个关系型数据库,也就是设计RDBMS(Relational Database Management System),这个问题考验的是对RDBMS各个模块的划分, 以及对数据库结构的了解.只要讲述 ...
- Ubuntu GitHub操作——分支、合并与标签
分支 分支是用来将特性开发绝缘开来的.在你创建仓库的时候,master 是"默认的"分支.在其他分支上进行开发,完成后再将它们合并到主分支上. 创建一个叫做"featur ...
- php判断一个值是否在一个数组中,区分大小写-也可以判断是否在键中
function in_array_case($value,$array){ return in_array(strtolower($value),array_map('strtolower',$ar ...
- VS2010-MFC(对话框:非模态对话框的创建及显示)
转自:http://www.jizhuomi.com/software/162.html 前面已经说过,非模态对话框显示后,程序其他窗口仍能正常运行,可以响应用户输入,还可以相互切换.本节会将上一讲中 ...
- Android之相关术语
Dalvik: Android特有的虚拟机,和JVM不同,Dalvik虚拟机非常适合在移动终端上使用! AVD: (android virtual machine):安卓虚拟设备,就是安卓的模拟器 A ...
- IDEA如何像Eclipse打开多个项目?
简述: 不能采用open方式,得采用 import module方式 (多个项目,可以不再同一个根目录下,真正的类似eclipse方式打开多个项目) 具体操作步骤: 1.选择一个maven项目,右键选 ...
- netty优化参考链接
Netty百万级推送服务设计要点:http://www.infoq.com/cn/articles/netty-million-level-push-service-design-points/ 用N ...
- QC的安装和配置
QC(Quality center)的安装配置 Wmware 虚拟机 数据库SQL server2000 Windows server 2003 须安装数据库的sp4补丁包 注意事项 数据库安装时选择 ...