Здравствуйте, abb269, Вы писали:
A>Есть какие-то мысли почему так происходит?
Что-то пошло не так, большего по вопросу не поймёшь.
Начнём с самого простого:
1. зачем вам вообще таски, если вы ограничиваете конкурентность до одного потока?
2. Как вы проверяете, что таски действительно выполняются в одном потоке?
3. Как вы гарантируете, что с sw работает только один поток?
4. В каком окружении выполняется код? отдельный сервис, iis, ещё что-то?
5. Вызывает ли ваш код Thread.Abort()?