Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/147.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# VS在调试会话上继续意味着关闭应用程序后内存泄漏?_C#_C++_Visual Studio - Fatal编程技术网

C# VS在调试会话上继续意味着关闭应用程序后内存泄漏?

C# VS在调试会话上继续意味着关闭应用程序后内存泄漏?,c#,c++,visual-studio,C#,C++,Visual Studio,如果Visual Studio保持调试会话,并且不停止调试以切换到编辑会话,我是否可以说,在我从程序本身关闭程序后,程序中肯定有内存泄漏,特别是在C#条件下?我不这么认为。在没有内存泄漏的情况下运行的程序,即使在用户要求退出该程序后,仍然可以运行。这可能是由程序或库中的错误引起的。错误可能是线程仍在后台运行,或者代码正在等待从未发生的事情。在VisualStudio中,您可以按Ctrl+Break或单击“调试->全部中断”,以查看哪些代码或线程仍在运行 当然,从另一个角度来看,你可以考虑一个不会

如果Visual Studio保持调试会话,并且不停止调试以切换到编辑会话,我是否可以说,在我从程序本身关闭程序后,程序中肯定有内存泄漏,特别是在C#条件下?

我不这么认为。在没有内存泄漏的情况下运行的程序,即使在用户要求退出该程序后,仍然可以运行。这可能是由程序或库中的错误引起的。错误可能是线程仍在后台运行,或者代码正在等待从未发生的事情。在VisualStudio中,您可以按Ctrl+Break或单击“调试->全部中断”,以查看哪些代码或线程仍在运行


当然,从另一个角度来看,你可以考虑一个不会退出的程序是泄露内存,因为它占用了系统内存,除非用户介入并杀死它。

它通常意味着你启动了一个你忘记终止的线程。IsBackground属性为false的人。和往常一样,使用调试器来解决这个问题。调试+Windows+线程向您显示正在发生的事情。