参见英文答案 >
Make user choosing how many threads he want the program to use 2个
我正在尝试创建一个C#工具,用户可以在其中选择他希望工具同时执行的线程数.
因此,例如,他将“10”放在threadsTextBox中,因此当他单击startButton时,程序将启动,并将同时在10个线程上执行所需的任务.
这是我有3个线程的当前代码,但我不知道如何让用户能够选择他希望程序使用多少线程.
static void Main(string[] args)
{
Task task1 = Task.Factory.StartNew(() => doStuff());
Task task2 = Task.Factory.StartNew(() => doStuff());
Task task3 = Task.Factory.StartNew(() => doStuff());
Task.WaitAll(task1, task2, task3);
Console.WriteLine("Done !");
}
static void doStuff()
{
// do stuff here
}
提前致谢.
最佳答案 这似乎是数组的理想用法:
static void Main(string[] args) {
var tasks = new Task[n];
for (int j1 = 0; j1 < n; ++j1)
tasks[j1] = Task.Factory.StartNew(() => doStuff());
Task.WaitAll(tasks);
Console.WriteLine("Done !");
}