О переключении потоков, переключении и повторном использовании потоков в TPL относительно AsyncLocal - PullRequest
1 голос
/ 09 ноября 2019

При использовании async / await в TPL, он будет повторно использовать незанятые потоки и теоретически вызывать обратные вызовы в других потоках, которые не использовались изначально?

Об AsyncLocal в этом контексте, передаст ли оно свое значение, чтобы соответствовать потокуили я могу получить значение из другого повторно используемого потока?

1 Ответ

2 голосов
/ 09 ноября 2019

Async-await выберет случайный поток из пула потоков, если только не существует SynchronizationContext , который может заставить TPL продолжать работу в том же потоке.

Идея AsyncLocal - сохранить значение в потоках. ThreadLocal зависит от потока.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...