


Помогите завершаются потоки c#
Помогите пожалуйста. Я делаю WinForms чат и добавил асинхронность в код, но в отлдаке все равно пишет про завершение потоков. Еще сообщения перестали выводится в форму. Единственный плюс - перестало зависать приложение, но на этом плюсы закончились. Вот код приложения и клиента https://pastebin.com/iQtR5xn0 , https://pastebin.com/PXBSKiTG
Дополненда и еще код сервера если надо https://pastebin.com/k5p5ntDf
вот такое в отладке
Поток 0x2ae0 завершился с кодом 0 (0x0).
Поток 0x514c завершился с кодом 0 (0x0).
Поток 0x4ce4 завершился с кодом 0 (0x0).
Поток 0x571c завершился с кодом 0 (0x0).
Ну так, каждая асинхронная задача = поток. А асинхронно выводить сообщения нужно через invoke у элемента
await Task.Run(() => {
textBox1.Invoke((Action)delegate { textBox1.Text = "Загрузка "; });
});
Убери await Task.Delay(500). Любые задержки портят работу приложения. Они только в исключительных ситуациях нужны. Вместо них лучше сделать проверку через текущее время