,,C#中ManualResetEvent用法详解

,,C#中ManualResetEvent用法详解

本文主要详细介绍了ManualResetEvent在C#中的用法,具有一定的参考价值。感兴趣的朋友可以参考一下。

第一、简单介绍

ManualResetEvent允许线程通过信号相互通信。通常,这种通信涉及到一个线程必须在其他线程完成任务之前完成的任务。当一个线程启动一个活动时(该活动必须在其他线程可以启动之前完成),它调用Reset将ManualReseteEvent置于非终止状态。这个线程可以看作是控制ManualReseteEvent。在ManualResetEvent上调用WaitOne的线程将阻塞并等待信号。

当控制线程完成它的活动时,它调用Set来通知等待线程可以继续。并释放所有等待的线程。一旦终止,ManualResetEvent将保持终止状态(即调用WaitOne的线程将立即返回而不会阻塞),直到被手动重置。您可以通过向构造函数传递一个布尔值来控制ManualResetEvent的初始状态,

真实;如果初始状态处于终止状态;否则为假。

第二、代码演示

使用系统;

使用系统。集合。泛型;

使用系统。Linq

使用系统。文本;

使用系统。穿线;

使用系统。线程。任务;

命名空间控制台应用程序2

{

流言类

{

线程t=null

ManualResetEvent manual event=new ManualResetEvent(true);//是trur,可以从头执行。

私有无效运行()

{

while(真)

{

this . manual event . wait one();

控制台。WriteLine('线程ID: {0} ',Thread . current Thread . managed Thread);

线程。睡眠(2000);

}

}

公共void开始()

{

this . manual event . set();

}

公共无效站点()

{

this . manual event . reset();

}

public MyThread()

{

t=新线程(this。跑);

t.start();

}

}

班级计划

{

静态void Main(string[] args)

{

MyThread myt=new MyThread();

while(真)

{

控制台。WriteLine('输入stop后台线程以暂停start和start执行!');

string str=控制台。ReadLine();

如果(字符串。ToLower()。Trim()=='停止')

{

控制台。WriteLine('线程停止运行.\ n’);

myt。stop();

}

如果(字符串。ToLower()。Trim()=='start ')

{

控制台。WriteLine('线程已启动并正在运行.\ n’);

myt。start();

}

}

}

}

}

运行测试结果

这就是本文的全部内容。希望对大家的学习有帮助,支持我们。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • 设计一个简单的C#控制台应用程序,C#控制台程序,C# 创建控制台应用程序
  • 深入解析windows第8版,深入解析C#(第4版)
  • 数组代码,c# 数组操作,C# 数组实例介绍(图文)
  • 学会C#要多久,学会c#要多久,c#学习之30分钟学会XAML
  • 回溯法01背包问题c,回溯法求解01背包问题伪代码,C#使用回溯法解决背包问题实例分析
  • xml文件转义字符,xml转意字符,C# XML中的转义字符操作
  • winform 进度条控件,c# 进度条使用
  • winform 进度条控件,c# 进度条使用,C#使用winform实现进度条效果
  • winform backgroundworker,c# isbackground
  • winform backgroundworker,c# isbackground,C# BackgroundWorker用法详解
  • lua与c#交互,lua c#
  • lua与c#交互,lua c#,ToLua框架下C#与Lua代码的互调操作
  • linq c#,linq原理 c#
  • linq c#,linq原理 c#,c#中LINQ的基本用法实例
  • java decimal保留两位小数,sql中decimal函数保留2位小数,C#中decimal保留2位有效小数的实现方法
  • 留言与评论(共有 条评论)
       
    验证码: