System.Drawing内存不足但仅限于独立

时间:2017-05-26 16:22:16

标签: c# multithreading build out-of-memory

我有一个奇怪的问题。

我有一个程序可以将大量的TIF文件转换为PDF。它只需要在大约40k文件上运行一次,但我已经测试了大约200个文件。

在我运行的服务器上,它因内存不足异常而崩溃(在System.Drawing中),通常我认为我做了一些愚蠢的事情,起初我认为这是因为更多的转换线程是在服务器上创建而不是我的开发框。所以我用1个线程试了一下它仍然崩溃了。请注意,在我的桌面上运行Visual Studio中的应用程序时,它一直运行良好。

所以我在服务器上打开了解决方案,这样我就可以在调试器中运行它,看看具体发生了什么。令我惊讶的是,它运行良好。即使再次引发最大线程,也会转换所有文件。更重要的是,服务器生成的EXE运行良好。所以它只发生在我的桌面上生成的构建,然后发送到服务器。我已经尝试了一些构建设置,但它不是世界末日,因为我可以在那里构建和运行。我只是好奇为什么会发生这种情况。

作为参考,服务器正在运行Server 2008R2,我的桌面运行的是Windows 7.两者都是64位。我尝试仅构建32位和64位,但两者都没有区别,所以它现在恢复为默认值。

提前致谢。

0 个答案:

没有答案