参见英文答案 >
Make user choosing how many threads he want the program to use 2个
我正在尝试创建一个C#工具,用户可以在其中选择他希望工具同时执行的线程数.
因此,例如,他将“10”放在threadsTextBox中,因此当他单击startButton时,程序将启动,并将同时在10个线程上执行所需的任务.
我正在尝试创建一个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 !"); }