1、当运行程序,出现如下错误
2、解决方法
在线程方法开头可以添加一句代码
Control.CheckForIllegalCrossThreadCalls = false;
3、简单设置开启一个线程,代码如下
开启一个线程,这个线程是针对执行某一个方法,方法代码执行结束了,那么线程也就结束了
如果让方法代码一直执行而不结束,那么线程也就一直在
简单应用:可以简单做个时间,一秒输出一次
namespace window
{
public partial class Form1 : Form
{
//可以声明全局线程数组
Thread[] workThreads = new Thread[3];
//点击按钮,开启线程
private void btnStart_Click(object sender, EventArgs e)
{
//线程二
if (workThreads[1] == null)
{
//如果线程不存在,则创建
workThreads[1] = new Thread(new ThreadStart(FunName));
workThreads[1].Name = (1).ToString();
workThreads[1].Start();
}
}
public void CollectSentenceData()
{
Control.CheckForIllegalCrossThreadCalls = false;
while (true) //条件一直都成立,循环内代码一直都会在执行
{
//写业务
}
}
}
}