gpt4 book ai didi

c# - 如何通过for循环条件停止多线程启动

转载 作者:行者123 更新时间:2023-11-30 15:39:16 25 4
gpt4 key购买 nike

这段代码将向您展示我是如何启动多线程的:

for (int i = 0; i < 8; i++)
{
doImages = new DoImages(this, TCPPORT + i);
var thread = new Thread(doImages.ThreadProc);
thread.Name = "Imaging";
var param = (i + 1).ToString();
thread.Start(param);
}

现在我想在关闭我的应用程序之前停止线程,但我不知道该怎么做?

最佳答案

一个简单的选择是存储对您生成的所有线程的引用,然后在完成后加入所有线程:

Thread[] threads = new Thread[8];
for (int i = 0; i < 8; i++)
{
doImages = new DoImages(this, TCPPORT + i);
var thread = new Thread(doImages.ThreadProc);
threads[i] = thread;
thread.Name = "Imaging";
var param = (i + 1).ToString();
thread.Start(param);
}
for (int i = 0; i < 8; i++)
{
threads[i].Join();
}

这将等待所有线程完成,然后应用程序终止。

关于c# - 如何通过for循环条件停止多线程启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10588467/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com