社区
C#
帖子详情
关于c#中使用Marshal.AllocHGlobal()方法开辟内存,达人请进~~
xiaoguaiwsx
2010-01-13 09:57:47
问题:我想用C#语言中的Marshal.AllocHGlobal()方法开辟一个较大的内存空间(2G左右),看到有的帖子讲说开辟的内存空间大小取决于操作系统,32位操作系统不超过2G,可是问题是,我怎么连1G的空间都开不出来??(机子内存4G)。help~~~
...全文
2215
6
打赏
收藏
关于c#中使用Marshal.AllocHGlobal()方法开辟内存,达人请进~~
问题:我想用C#语言中的Marshal.AllocHGlobal()方法开辟一个较大的内存空间(2G左右),看到有的帖子讲说开辟的内存空间大小取决于操作系统,32位操作系统不超过2G,可是问题是,我怎么连1G的空间都开不出来??(机子内存4G)。help~~~
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
luo_kai326
2012-09-06
打赏
举报
回复
这个分配的内存会自己释放么?
xiaoguaiwsx
2010-01-22
打赏
举报
回复
谢谢wartim~~~
wartim
2010-01-13
打赏
举报
回复
内存碎片太多,每块都不满1G,虽然碎片加起来可能超过1G了,而且由于程序本身占用的内存也算在2G里,所以要申请1G的连续内存可能有点困难,用
System.Runtime.MemoryFailPoint MFP = new System.Runtime.MemoryFailPoint(1024);
可以测试是不是能得到这么多内存,如果不能就会抛出异常
让.Net 应用程序突破2G的内存访问限制
http://www.chinaz.com/Program/.NET/1124463V2008.html
xiaoguaiwsx
2010-01-13
打赏
举报
回复
wartim,为什么没有呢?
wartim
2010-01-13
打赏
举报
回复
没有1G的连续空间
平生我自如
2010-01-13
打赏
举报
回复
顶
C#
111,120
社区成员
642,545
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章