Проблема с ожиданием событий
От: Аноним  
Дата: 27.05.05 08:16
Оценка:
Вот минимальный код (форма с кнопкой):


private void button1_Click(object sender, System.EventArgs e)
{
int numberOfThreads = 10;
TT[] thrs = new TT[numberOfThreads];
ManualResetEvent[] events =
new ManualResetEvent[numberOfThreads];

for(int i = 0; i < numberOfThreads; i++)
{
thrs[i] = new TT();
events[i] = thrs[i].event__;
thrs[i].Start();
}

WaitHandle.WaitAll(events, new TimeSpan(0, 0, 5), false); // Вот здесь вылетает такая ошибка:
// An unhandled exception of type 'System.NotSupportedException' occurred in mscorlib.dll

// Additional information: WaitAll for multiple handles on an STA thread is not supported.
}
}

public class TT
{
public ManualResetEvent event__ = new ManualResetEvent(false);

public void Start()
{
new Thread(new ThreadStart(this.ThreadFunc)).Start();
}

public void ThreadFunc()
{
this.event__.Set();
}
}




В проекте я использую Syncfusion-овский компонент MainFrameBarManager. Если его убрать, то все срабатывает на ура. Может быть кто-нибудь сталкивался с подобным, бьюсь уже второй день . Help. Заранее спасибо
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.