【发布时间】:2013-12-03 15:38:37
【问题描述】:
我遇到了一个 C# 应用程序和一个 COM 组件分配内存的问题:
C# 程序调用用 C++ 编写的 COM DLL 中的一个函数,该函数执行矩阵处理。该函数分配了大量内存(大约 800MB,8 个 100MB 块)。这会失败(从 C# 调用函数时,malloc 返回“错误分配”。
如果我从 C 程序运行相同的函数,分配相同数量的内存,那么分配内存就没有问题。
我有 8GB RAM,Win7 x64 并且有大量可用内存。
如何解决从 C# 应用程序调用时分配内存的问题? 我试图用谷歌搜索它,但真的不知道要搜索什么。搜索设置堆大小等,但没有给出任何东西。
感觉有点失落!感谢所有帮助!
【问题讨论】:
-
“结果是一个 Excel 插件”不是一个小细节,你可以忽略不计。
标签: c# .net memory-management com