我认为一个Thread在应用程序关闭后仍然存在(C#)

时间:2017-07-16 08:30:11

标签: c# multithreading

我有一个使用少量线程的C#应用​​程序(专门用于显示图表并从设备获取数据)。

经过一些使用后我的应用程序变慢了,我必须重新启动计算机来解决这个问题。

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

您可以确保应用程序在关闭时不在后台运行。您可以在TaskManager中进行检查。如果它不存在,则该过程终止,并且属于app的所有线程也终止。

您的应用可能会发布一些非托管资源。

答案 1 :(得分:0)

有两种类型的线程。它们是背景和前景。如果你的线程是Foreground,那么在所有前台线程完成之前,应用程序不会关闭。

https://docs.microsoft.com/en-us/dotnet/standard/threading/foreground-and-background-threads

你应该dispose所有非托管资源,如@opewix所说。

What is IDisposable for?