使用线程创建 Visual C#
NET 应用程序
启动 Microsoft Visual Studio NET
新建名为 ThreadWinApp 的 Visual C# NET Windows 应用程序项目
向窗体添加一个Button控件默认情况下该按钮名为Button
向窗体添加一个ProgressBar组件默认情况下该进度栏名为ProgressBar
右键单击该窗体然后单击查看代码
将以下语句添加到文件的开头
using SystemThreading;
为Button添加以下Click事件处理程序private void button_Click(object sender SystemEventArgs e)
{
MessageBoxShow(This is the main thread);
}
将下面的变量添加到 Form 类
private Thread trd;
将下面的方法添加到 Form 类private void ThreadTask()
{
int stp;
int newval;
Random rnd=new Random();
while(true)
{
stp=thisprogressBarStep*rndNext();
newval = thisprogressBarValue + stp;
if (newval > thisprogressBarMaximum)
newval = thisprogressBarMaximum;
else if (newval < thisprogressBarMinimum)
newval = thisprogressBarMinimum;
thisprogressBarValue = newval;
ThreadSleep();
}
}
注意这是创建线程的基础代码此段代码是一个无限循环它随机增加或减小ProgressBar中的值然后等待 毫秒后再继续
为Form添加以下 Load 事件处理程序此段代码将新建一个新线程使该线程成为后台线程然后启动该线程
private void Form_Load(object sender SystemEventArgs e)
{
Thread trd = new Thread(new ThreadStart(thisThreadTask));
trdIsBackground = true;
trdStart();
}
确认它可以使用
生成并运行该应用程序请注意ProgressBar中的值会随机更改这是新线程在起作用
要演示主线程独立于更改ProgressBar值的线程请单击窗体上的按钮会出现一个对话框其中显示下面的错误信息
This is the main thread
Wait for input请注意ProgressBar中的值会继续更改