当前位置: 首页 > news >正文

wordpress 判断页面名称班级优化大师头像

wordpress 判断页面名称,班级优化大师头像,三合一网站建设哪个好,事业单位网站建设方案现实的例子 三个线程都是while(true)的循环体 A线程:采集数据 B线程:画曲线 C线程:存数据库 AutoResetEvent类 AutoResetEvent 是一个线程同步的类,它提供了一种机制,允许一个或多个线程等待直…

现实的例子

三个线程都是while(true)的循环体

A线程:采集数据

B线程:画曲线

C线程:存数据库

AutoResetEvent类 

AutoResetEvent 是一个线程同步的类,它提供了一种机制,允许一个或多个线程等待直到接收到信号,然后继续执行。

以下是 AutoResetEvent 的一些常用成员:

  • WaitOne():使当前线程等待接收信号。如果没有收到信号,则当前线程将被阻塞,直到接收到信号。
  • Set():发送信号,唤醒一个正在等待的线程。如果没有线程在等待,下一个调用 WaitOne() 的线程将立即被唤醒。
  • Reset():重置事件状态,将其设置为非终止状态。AutoResetEvent 类在调用 Set() 方法后会自动调用 Reset() 方法将事件状态重置为非终止状态。

 代码

 public partial class Form4 : Form{AutoResetEvent A;AutoResetEvent B;AutoResetEvent C;int a;public Form4(){InitializeComponent();A = new AutoResetEvent(false);B = new AutoResetEvent(false);C = new AutoResetEvent(false);Task.Factory.StartNew(() =>{for (int i = 0; i < 100; i++){A.WaitOne();Invoke(new Action(() => label1.Text = i.ToString()));Thread.Sleep(500);B.Set();}});Task.Factory.StartNew(() =>{for (int i = 0; i < 100; i++){B.WaitOne();Invoke(new Action(() => label2.Text = i.ToString()));Thread.Sleep(500);C.Set();}});Task.Factory.StartNew(() =>{for (int i = 0; i < 100; i++){C.WaitOne();Invoke(new Action(() => label3.Text = i.ToString()));Thread.Sleep(500);A.Set();}});}private void button1_Click(object sender, EventArgs e){A.Set();}}

这段代码演示了如何使用 AutoResetEvent 实现两个线程操作按钮的功能。

首先,在 Form4 类中定义了三个 AutoResetEvent 对象:ABC,以及一个整型变量 a。然后在构造函数中初始化这些对象。

接下来,通过使用 Task.Factory.StartNew() 方法创建三个任务,并在每个任务内部编写逻辑。

第一个任务使用 for 循环来迭代 100 次。在每次循环中,它调用 A.WaitOne() 方法等待信号,然后使用 Invoke() 方法将计数值赋值给 label1.Text 属性,并在界面上显示出来。然后线程休眠 500 毫秒,并通过 B.Set() 方法发送信号给第二个任务。

第二个任务也使用 for 循环来迭代 100 次,类似于第一个任务。它调用 B.WaitOne() 方法等待信号,然后使用 Invoke() 方法将计数值赋值给 label2.Text 属性,并在界面上显示出来。然后线程休眠 500 毫秒,并通过 C.Set() 方法发送信号给第三个任务。

第三个任务同样使用 for 循环来迭代 100 次,类似于前两个任务。它调用 C.WaitOne() 方法等待信号,然后使用 Invoke() 方法将计数值赋值给 label3.Text 属性,并在界面上显示出来。然后线程休眠 500 毫秒,并通过 A.Set() 方法发送信号给第一个任务。

最后,在界面上有一个按钮 button1,当点击按钮时,会调用 A.Set() 方法,发送信号给第一个任务。

通过这样的逻辑和信号交互,三个任务之间实现了循环操作,每个任务依次运行并更新界面上的标签文本,从而实现了两个线程操作按钮的功能。

 运行截图

http://www.hkea.cn/news/852496/

相关文章:

  • 深圳网站优化咨询网上广告怎么推广
  • 网站右击无效是怎么做的网络营销产品
  • 中宣部网站政治建设网站服务器是什么意思
  • 淮安网站定制徐州seo外包公司
  • 嘉兴类网站系统总部网站建设技术解决方案
  • 做网站的教科书外包网络推广公司推广网站
  • 模板名字 wordpress优化大师如何删掉多余的学生
  • 3d网站建设制作百度关键词优化手段
  • 新手做那些网站比较好东莞企业网站排名
  • 欧美风格网站360指数
  • 优秀网站建设公司电话下列哪些店铺适合交换友情链接
  • 58同城乌鲁木齐网站建设重庆网站到首页排名
  • wordpress知言主题山东服务好的seo公司
  • 旅游商务平台网站建设功能需求关键词排名查询官网
  • 做网站要搭建本地服务器么微商引流被加方法精准客源
  • 网站名字要备案吗友情链接怎么弄
  • 江苏网站开发外链网站大全
  • 网站代备案流程图百度关键词优化排名技巧
  • 石狮建设局网站今日头条站长平台
  • 修改公司网站网页站长素材音效
  • 网站速度测速免费访问国外网站的app
  • 常州网站搭建公司宣传推广渠道有哪些
  • 中国建设监理网站广告网络
  • 网站维护费用怎么收路由优化大师官网
  • 如何加入小说网站做打字员合肥网站优化推广方案
  • 网站建设现状关键词在线优化
  • 网站建设就业百度网址导航主页
  • 郑州公司做网站汉狮中囯联通腾迅
  • 专业网上购物平台优化网站的步骤
  • 用web开发一个网站怎么做网站推广优化平台