Я использую BackgroundWorker в C#, и мне нужно изменить приоритет потока на RealTime и характеристики на «Pro Audio», используя AvSetMmThreadCharacteristics.C#: BackgroundWorker Thread Priority
Поскольку BackgroundWorker перерабатывает потоки в ThreadPool, не рекомендуется изменять эти свойства, но если мне придется переписать код для использования обычного Thread(), я потеряю все дополнительные функции (отмена/прогресс/и т.д).
Итак, какие проблемы я могу ожидать, когда придерживаюсь ThreadWorker?
Я уже пытался найти код, который имитирует поведение BackgroundWorker, используя обычный поток (например, http://www.codeproject.com/Articles/42103/Generic-Background-Worker), но ни одна из них не поддерживает изменение приоритетов. – Muis
Вы можете отменить любой простой флаг (используйте Interlocked.Exchange) и выполнить отчеты о проделанной работе с помощью Control.Invoke() или аналогичного. –