Я установил StaTaskScheduler потоков на 1, и я ожидал, что я получу один вывод отладки каждые 5 секунд, но в итоге получаю 10 с той же датой
private void Test() {
for (int i = 0; i < 10; i++)
Task.Factory.StartNew(() =>
{
Task.Delay(5000); //temp for long operation
Debug.WriteLine(DateTime.Now);
}, CancellationToken.None, TaskCreationOptions.None, MainWindow.MyStaThread);
}
public static StaTaskScheduler MyStaThread =
new StaTaskScheduler(numberOfThreads: 1);
Что я скучаю? Причина STA заключается в том, что позже он будет использоваться для извлечения значков, нуждающихся в STA, но этот тест должен проверить, что это делается последовательно.