Многопоточность в win-службе на .net core

92
07 марта 2022, 11:30

Помогите разобраться с правильным использованием многопоточности в виндовс-службе, написанной на .net core. Есть служба, которая выполняет метод, в котором поочередно вызываются несколько других методов. Первый в этом же потоке (мой код), а остальные являются асинхронными и не редактируются(из Nuget-пакета). При запуске приложения как консольного - каждый их этих методов отрабатывает, нет никаких ошибок. Но если этот самый файл установить как вин-службу и запустить, то отрабатывает только первый из набора вызываемых методов. А остальные (асинхронные) пролетают мимо. Через них выполнение точно проходит, т.к. есть запись в лог после вызова каждого из них, записи с интервалом 2-3 мс. Есть ли разница в том, как работают потоки у консольного приложения и у вин-службы? Думал, что другие потоки не успевают отработать, ставил задержку на основном потоке. Не помогло.

READ ALSO
Не закрывать базовый поток

Не закрывать базовый поток

Можно ли как-то сделать так, что бы не вызывался Dispose при использовании оберток StreamReader / StreamWriter?

93
Выводит удаленные записи из БД

Выводит удаленные записи из БД

вот моя настройка nhibernate где я говорю, что не выводить записи у которых "IsDeleted = true" в БД :

77
Количество символов в HTML, в поле типа TEXT, БД PostgreSQL

Количество символов в HTML, в поле типа TEXT, БД PostgreSQL

Подскажите, как можно подсчитать количество символов в поле типа TEXT в БД PostgreSQL, подсчитать количество символов без пробелов, HTML-ссылок, спецсимволов?

90