TaskCreationOptions.longrunning Option и Threadpool
-
29-09-2019 - |
Вопрос
TPL использует планировщики задач для координации задач. В соответствии с официальный документ, планировщик задач по умолчанию использует пул резьбы, но если TaskCreationOptions.LongRunning
Опция представлена, то она создаст выделенный поток для этой задачи (A).
Вопрос: На данный момент документы MSDN для Visual Studio 2010 не готовы и текущие онлайн MSDN не доработаны; Кто-нибудь знает, если (а) является правдой или ложным?
Решение
Да, LongRunning
заставляет создание новой резьбы вне бассейна. Вот какой-то псевдоборный код из последней версии Framework:
...
if (task.Options HasFlag LongRunning) then
create new Thread thread
thread.Start(task)
...
Редактировать: преобразуется из уродливой C # на псевдокод.
Другие советы
Предположительно, вы можете проверить это с помощью «Thread.isthreadpoolThread»:
http://msdn.microsoft.com/en-us/library/system.threading.thread.isthreadpoolthread.aspx.