Убирают sync-over-async и долгие блокировки на пуле, ограничивают параллелизм, смотрят метрики пула.
Разбор
- .Result на пуле — классика.
- CPU-bound — с лимитом степени параллелизма.
- Поднять min threads — не корень проблемы.
- Inject latency в тестах.
Итог
Starvation лечат устранением блокировок на пуле.