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

东台网站建设公司三台网站seo

东台网站建设公司,三台网站seo,wordpress副标题些什么,有没有做网页的兼职网站上位机开发中一定会用到的技术就是 设备的线程开始运行执行生产流程,在生产过程中会有要打开安全门或暂停设备动作,人为去排除设备小问题的时就要用到暂停功能,问题排除后设备继续运行,生产完成后设备停止。 这些操作是上位机开发…

        上位机开发中一定会用到的技术就是 设备的线程开始运行执行生产流程,在生产过程中会有要打开安全门或暂停设备动作,人为去排除设备小问题的时就要用到暂停功能,问题排除后设备继续运行,生产完成后设备停止。 这些操作是上位机开发中必须要实现的功能。下面是一个简单的示例。

 1.界面

2.代码

2.1主要用到的对象

//线程源
private CancellationTokenSource cts = new CancellationTokenSource();
//手动停止事件对象
private ManualResetEvent resetEvent = new ManualResetEvent(true);
//线程
private Task task;

2.2 开始

/// <summary>
/// 开 始
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnStart_Click(object sender, EventArgs e)
{if (cts.IsCancellationRequested){cts = new CancellationTokenSource();}resetEvent.Set();task = Task.Factory.StartNew(() =>{int count = 1;Color clrInfo = Color.Blue;while (!cts.IsCancellationRequested){resetEvent.WaitOne();//阻止当前线程var strInfo = "运行日志[" + count + "]";AddListViewThread(null, strInfo, clrInfo);count++;Thread.Sleep(1000);}});
}

2.3 暂 停

/// <summary>
/// 暂 停
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnPause_Click(object sender, EventArgs e)
{resetEvent.Reset();
}

2.4继 续

/// <summary>
/// 继 续
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnContinue_Click(object sender, EventArgs e)
{resetEvent.Set();
}

2.5停 止

/// <summary>
/// 停 止
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnStop_Click(object sender, EventArgs e)
{cts.Cancel();
}

全部代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Dynamic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;namespace TaskWindowsFormsApp
{public partial class Form1 : Form{public Form1(){InitializeComponent();}delegate void AddListViewCallback(string strTime, string strContent, Color textColor);//线程源private CancellationTokenSource cts = new CancellationTokenSource();//手动停止事件对象private ManualResetEvent resetEvent = new ManualResetEvent(true);//线程private Task task;/// <summary>/// 开 始/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void btnStart_Click(object sender, EventArgs e){if (cts.IsCancellationRequested){cts = new CancellationTokenSource();}resetEvent.Set();task = Task.Factory.StartNew(() =>{int count = 1;Color clrInfo = Color.Blue;while (!cts.IsCancellationRequested){resetEvent.WaitOne();//阻止当前线程var strInfo = "运行日志[" + count + "]";AddListViewThread(null, strInfo, clrInfo);count++;Thread.Sleep(1000);}});}/// <summary>/// 暂 停/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void btnPause_Click(object sender, EventArgs e){resetEvent.Reset();}/// <summary>/// 继 续/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void btnContinue_Click(object sender, EventArgs e){resetEvent.Set();}/// <summary>/// 显示(添加)日志/// </summary>/// <param name="strTime">时间</param>/// <param name="strContent">内裤</param>/// <param name="textColor">颜色</param>public void AddListViewThread(string strTime, string strContent, Color textColor){if (this.IsDisposed){return;}if (this.listViewWorkLogs.InvokeRequired){//获取一个值,该值指示调用方在对控件进行方法调用时是否必须调用 Invoke 方法,因为调用方位于创建控件所在的线程以外的线程中AddListViewCallback d = new AddListViewCallback(AddListViewThread);this.Invoke(d, new object[] { strTime, strContent, textColor });}else{AddContent2ListView(strTime, strContent, textColor);}}/// <summary>/// 显示(添加)日志/// </summary>/// <param name="strTime">时间</param>/// <param name="strContent">内裤</param>/// <param name="textColor">颜色</param>public void AddContent2ListView(string strTime, string strContent, Color textColor){try{if (strTime == null){strTime = string.Format("{0}:{1}:{2}", DateTime.Now.Hour, DateTime.Now.Minute, DateTime.Now.Second);}int nCount = listViewWorkLogs.Items.Count;if (nCount > 600){for (int i = nCount - 1; i > 100; i--){listViewWorkLogs.Items.RemoveAt(i);}}}catch{int nCount = listViewWorkLogs.Items.Count;if (nCount > 600){listViewWorkLogs.Clear();}}ListViewItem lvItem = new ListViewItem();lvItem.ForeColor = textColor;lvItem.Text = strTime;lvItem.StateImageIndex = 0;lvItem.SubItems.Add(strContent);this.listViewWorkLogs.Items.Insert(0, lvItem);}/// <summary>/// 停 止/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void btnStop_Click(object sender, EventArgs e){cts.Cancel();}}
}

http://www.ds6.com.cn/news/18859.html

相关文章:

  • 盐城网站建设官网搭建网站的步骤
  • 哪些网站可以免费做h5怎么做起泡胶
  • 网站建设设计服务店铺运营
  • app网站与普通网站的区别是什么中国十大软件外包公司排名
  • 住房和城乡建设岗位评定网站自媒体135免费版下载
  • 怎么发布php网站业务推广公司
  • 网站登录超时怎么解决最新网站推广方法
  • java网站开发实例小说引流推广
  • 金坛建设银行总行网站北京seo排名方法
  • 周口seo 网站班级优化大师使用指南
  • 云电脑平台哪个最好信息流优化师证书
  • dedecms学校网站模板免费下载2345导航网址
  • 设计网站怎么做的肇庆seo外包公司
  • 网络营销网站建设山东今日热搜
  • 怎么卖wordpress模板什么公司适合做seo优化
  • 网站开源程序营销外包公司
  • ppt模板免费下载的网站百度搜索网页版入口
  • 网站建设泽宇seo外链发布工具
  • 邯郸房产信息网恋家网安徽网站seo
  • 做装修哪个网站推广好产品推广方式及推广计划
  • 建设小型网站系统开题报告杭州seo代理公司
  • 做网站的是什么能打开各种网站的浏览器下载
  • 高端网站开发建设成都专业的整站优化
  • 珠宝类企业网站(手机端)各大网站收录查询
  • 南充免费推广网站seo快速排名优化
  • 长春网站优化服务站长推广工具
  • 外贸网站运营怎么做网络营销推广的手段
  • 大资讯wordpress主题网站seo优化服务
  • 做暧暧视频免费视频老司机网站软文代理平台
  • 注册企业营业执照需要什么条件seo推广公司有哪些