2009-08-12 85 views
0

虽然我还是C#的新手,但我很好奇是否有办法告诉Windows,它需要留出X内存来运行此应用程序。在调试(F5)时,偶尔会发现一个随机的“写入受保护内存的错误”通知,并且在重新启动Visual Studio版本后通常会稍微好一些。偶尔需要一个Windows Reboot。所以我假设我需要指定一个更大的内存大小的窗口留出,然后收集。设置C#内存参数

想法?

+2

如果你内存不足,你会得到一个OutOfMemory异常。这个错误通常意味着你有不安全的或者正在访问你无法访问的内存地址的C++代码,例如在给定图像的缓冲区指针的情况下读/写太远。 – 2009-08-12 19:08:04

+0

我实际上只是将图像转换为byte [],然后将其粘贴到IntPtr中,然后将其反转。根本没有任何dll电话。 今天只发生一次,在Program.cs中,Application.Run行。所述错误试图写入受保护的内存。 有趣。 – Olewolfe 2009-08-13 19:12:43

回答

3

这不是指定更多内存的问题。这听起来像是你在CLR上遇到了一些特殊情况,你正在使用一些不正当的代码,你有一些不好的记忆。

你没有看到这个问题,当不调试?它通常是在相同的代码区域吗?

2

在Visual Studio或C#程序中无需设置任何东西来防止发生这种情况。这听起来像是一个比这更严重的问题。

您可能想在SuperUser.com上问这个问题,看他们是否对您的机器和软件的健康有任何想法。

作为c#的新手,你不是真的使用unsafe关键字,是吗? :)

超级用户的测试密码can be found here