TGViewer
Punk Programmer | Рассуждаю об IT Punk Programmer | Рассуждаю об IT @punk_programmer · 19 subscribers
Post #938 17

Forwarded from C# Ready | Unity

Зачем в библиотечном async-коде часто ставят `ConfigureAwait(false)`?

Потому что await по умолчанию пытается “вернуться” в исходный контекст выполнения. В UI это может быть полезно. Но в библиотеке это обычно лишнее и иногда даже вредное.

Частая картина: внутри библиотеки есть await, а дальше никакого UI нет. Но метод всё равно тащит контекст вызывающего кода:
await http.GetStringAsync("/data");


Правильнее — явно сказать: “мне не важно возвращаться в этот контекст”:
await http.GetStringAsync("/data").ConfigureAwait(false);


Так библиотечный код становится более предсказуемым. Он меньше зависит от того, откуда его вызвали. И он не навязывает окружению свои ожидания.

В приложении, где после await ты обновляешь UI, ConfigureAwait(false) может быть неуместен. Это другое правило.

🔥 Меньше привязки к контексту, меньше неожиданностей, и код сразу говорит, что ему не нужен “возврат в UI”.

➡️ C# Ready | #совет
  • 🤔 1
More from @punk_programmer
  1. Oct 9, 2026«Яндекс» договорился с облачными провайдерами VK Cloud, Selectel и К2Cloud об ускоренном р…
  2. Oct 9, 2026Акции «Яндекса» упали на 4,2% — до 3,42 тыс. рублей — после новостей об атаке БПЛА на дата…
  3. Oct 9, 2026Как человек работающий с Giga Am в плане кода и настройки пайплана - это супер ахуенный ин…
  4. Oct 9, 2026⚡️ GigaAM теперь может попробовать каждый — в новом приложении Тайп Мы разрабатываем модел…
  5. Oct 8, 2026Рунет: чем централизованнее, тем уязвимее. Удар по дата‑центру Яндекса побудил многих «око…
  6. Oct 8, 2026#YDEX В дата-центре «Яндекса» в Сасове Рязанской области в результате атаки беспилотников…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →