zoukankan
html css js c++ java
c# 多线程基本操作
using
System;
using
System.Collections.Generic;
using
System.ComponentModel;
using
System.Data;
using
System.Drawing;
using
System.Text;
using
System.Windows.Forms;
using
System.Threading;
namespace
winfromDeom
{
public
partial
class
Form1 : Form
{
public
Form1()
{
InitializeComponent();
}
private
void
Form1_Load(
object
sender, EventArgs e)
{
button2.Enabled
=
false
;
}
//
声名一个线程
public
Thread t;
public
delegate
void
upUI();
private
void
button1_Click(
object
sender, EventArgs e)
{
progressBar1.Value
=
0
;
button1.Enabled
=
false
;
button2.Enabled
=
true
;
//
实列化一个线程
t
=
new
Thread(
new
ThreadStart(doThread));
//
设置是否是后台执行的线程
t.IsBackground
=
true
;
//
开始执行这个线程
t.Start();
}
private
void
doThread()
{
//
更新UI委托
upUI upui
=
new
upUI(upDataUi);
try
{
while
(
true
)
{
Thread.Sleep(
0
);
//
开始更新UI
this
.Invoke(upui);
}
}
finally
{
Thread.Sleep(
5000
);
}
}
private
void
button2_Click(
object
sender, EventArgs e)
{
//
设置为终止状态
t.Abort();
//
阻塞这个线程
t.Join();
button1.Enabled
=
true
;
button2.Enabled
=
false
;
}
/**/
///
<summary>
///
执行UI更新的方法
///
</summary>
private
void
upDataUi()
{
if
(progressBar1.Value
!=
100000
)
{
progressBar1.Value
=
progressBar1.Value
+
10
;
label1.Text
=
progressBar1.Value.ToString();
}
else
{
t.Abort();
t.Join();
button1.Enabled
=
true
;
button2.Enabled
=
false
;
}
}
private
void
Form1_FormClosing(
object
sender, FormClosingEventArgs e)
{
t.Abort();
t.Join();
}
}
}
查看全文
相关阅读:
Android Activity 四种启动模式
Android Activity的生命周期
Android SQLite (五 ) 全面详解(三)
Android SQLite (四 ) 全面详解(二)
工作流设计 zt
法律网站分类 zt
刑事案件的构成要素 zt
犯罪构成三层次记忆口诀 zt
E asy Boo t 6.51 启动易 制作启动光盘的软件(附注册码)
父线程开启子进程且共享内存
原文地址:https://www.cnblogs.com/wubiyu/p/818810.html
最新文章
利用背景流量数据(contexual flow data) 识别TLS加密恶意流量
通过BSSID和无线流量传输后门Payload
八百元八核的服务器?二手服务器搭建指南
IoT设备程序开发及编译环境搭建初体验
Top 10 SIEM Products
spring boot 如何设置为不为web方式启动
top-siem-products
企业安全建设之搭建开源SIEM平台
工业控制信息安全资源汇总(国内篇)
基于机器学习的工控安全风险评估
热门文章
《工业控制系统信息安全防护指南》产品措施匹配表
IBM如何看待SOC和态势感知
07年的soc文章
Gartner:2018年SIEM(安全信息与事件管理)市场分析
Android 动态加载 (三) PAK 详解
Android 动态加载 (二) 态加载机制 案例二
Android 动态加载 (一) 态加载机制 案例一
Android优化—— 内存分析工具 MAT 的使用
Android优化——UI检视利器:Hierarchy Viewer
Android优化—— Google 发布 Android 性能优化典范
Copyright © 2011-2022 走看看