Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/313.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# 空白WinForms应用程序内存消耗过多_C#_.net_Winforms_Memory - Fatal编程技术网

C# 空白WinForms应用程序内存消耗过多

C# 空白WinForms应用程序内存消耗过多,c#,.net,winforms,memory,C#,.net,Winforms,Memory,为什么我的Windows窗体应用程序是一个空白应用程序,甚至没有被我的用户使用,却消耗了越来越多的内存 您可以通过以下步骤进行复制: 开放式Visual Studio 2013终极版 新项目>C>Windows窗体应用程序>.NET Framework 4.5 从工具箱窗格将PictureBox添加到Form1 右键单击图片框并选择“选择图像…”。。。 选择GIF文件 按F5键 打开任务管理器,观察内存每秒增加N KB。 很明显,这让我抓狂。我的应用程序大约从开始,GC没有收集未使用的内存,因为

为什么我的Windows窗体应用程序是一个空白应用程序,甚至没有被我的用户使用,却消耗了越来越多的内存

您可以通过以下步骤进行复制:

开放式Visual Studio 2013终极版 新项目>C>Windows窗体应用程序>.NET Framework 4.5

从工具箱窗格将PictureBox添加到Form1

右键单击图片框并选择“选择图像…”。。。 选择GIF文件 按F5键 打开任务管理器,观察内存每秒增加N KB。
很明显,这让我抓狂。我的应用程序大约从开始,GC没有收集未使用的内存,因为它非常小

您可以尝试强制GC收集这不是一个好的实践,只是为了测试

public Form1()
    {
        InitializeComponent();
        _timer.Interval = 10000;
        _timer.Tick += _timer_Tick;
        _timer.Start();
    }

    void _timer_Tick(object sender, EventArgs e)
    {
        GC.Collect();
    }

在此之后,我的电脑的内存将保持在3.2MB:

使用内存档案器查看应用程序中的哪些对象占用了这么多内存。这是在调试器之外发生的吗?没有复制,不能说是我期望的。只是正常的gen0构建,然后在第一次收集发生后进入约560万个私有内存使用。你需要寻找环境问题,这通常始于反恶意软件和其他非标准插件。我也不能重新编程,但我已经安装了.NET4.5.2。您可以在安装了.NET 4.5.2的情况下再试一次吗?w8.1、64位、vs2013x、up2、.NET 4.5.5不会出现这种情况