WaitAll for multiple handles on a STA thread is not supported

前端 未结 5 1791
猫巷女王i
猫巷女王i 2020-12-03 00:36
  1. Why do I get this error message? \"WaitAll for multiple handles on a STA thread is not supported.\"
  2. Should I use [MTAThreadAttribute] attribut? Update
5条回答
  •  爱一瞬间的悲伤
    2020-12-03 01:06

    use something like this:

    foreach (ITask Task in Tasks)
    {
        Task.WaitHandle = CompletedEvent;
        new Thread(Task.Run).Start();
    }
    
    int TasksCount = Tasks.Count;
    for (int i = 0; i < TasksCount; i++)
        CompletedEvent.WaitOne();
    
    if (AllCompleted != null)
        AllCompleted(this, EventArgs.Empty);
    

提交回复
热议问题