在Form1_Load中创建和启动的c#线程实际上并没有启动

本文关键字:启动 实际上 并没有 线程 Form1 Load 创建 | 更新日期: 2023-09-27 18:17:19

如果我像这样启动一个线程

addingResults = new Thread(threadAddingResults);
addingResults.Start();

在Form1_Load函数中,线程没有启动,但如果我用相同的代码启动它,让我们说按钮单击它的工作很好。有什么原因吗?这是有意的行为吗?

在Form1_Load中创建和启动的c#线程实际上并没有启动

发现错误,我将线程声明为外部变量,并在初始化它之前调用addingResults。IsBackground由于某种原因,在调试模式下没有返回异常,但是Form1_Load中这之后的代码没有被执行。

所以我做了这个

addingResults = new Thread(threadAddingResults);
addingResults.IsBackground = true;
addingResults.Start();

可以