7

我需要将我的 c# 代码翻译成 python。我在 c# 中有一个任务,需要将其翻译成 python。这是一段代码:

List<Task> t = new List<Task>();
for(int i = 0; i < _tasks.Count; i++)
{
     var theTask = _tasks[i];
     t.Add(Task.Factory.StartNew(() => theTask.SAPTask.Execute(theTask.index, theTask.WindowCount)));
}
t.ForEach(x => x.Wait());

这段代码对于运行我的程序至关重要。我需要 python 在单独的线程中运行列表中的所有任务,并阻塞主线程直到所有任务完成。python有这个功能吗?

4

2 回答 2

1

我需要 Python 运行列表中的所有任务,然后阻塞主线程,直到所有任务完成

的主要用例Task避免阻塞主线程,因此用户可以在将工作推送到不同线程时与应用程序交互。

您是否只是想在各个工作之间实现并行性?
如果您使用的是 Python 3.2,那么concurrent.futures它在某种程度上看起来确实像 TPL。

于 2013-06-05T23:30:46.090 回答
0

任务只是一个操作,作为它自己的线程运行。只需创建一个线程并让它做一些特定的事情,你就有了你的任务。

于 2013-06-05T23:18:38.160 回答