havealook
驱动牛犊
驱动牛犊
  • 注册日期2004-07-15
  • 最后登录2004-12-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:2239回复:15

请教大的内存分配问题

楼主#
更多 发布于:2004-07-15 07:28
一次需要分配500M以上内存的编程方法是什么,请不吝赐教
:(
hdnanz
驱动牛犊
驱动牛犊
  • 注册日期2003-01-08
  • 最后登录2004-12-30
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-07-15 08:43
采用内存分配函数,如virtualalloc()等
wyzhe200
驱动牛犊
驱动牛犊
  • 注册日期2004-04-22
  • 最后登录2005-04-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-07-15 11:44
用malloc 不行吗? 为什么?
minotaurking
驱动牛犊
驱动牛犊
  • 注册日期2002-03-08
  • 最后登录2009-09-28
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望40点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-07-15 22:28
即使要用那么多内存,也不能这么分配啊
havealook
驱动牛犊
驱动牛犊
  • 注册日期2004-07-15
  • 最后登录2004-12-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-07-16 08:07
到底该怎么分????
netxy
驱动牛犊
驱动牛犊
  • 注册日期2004-07-15
  • 最后登录2004-07-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-07-16 08:09
刚才试了一下,用new 和delete 就可以啊,只不过速度巨慢,几乎死机。
lqhnet
驱动牛犊
驱动牛犊
  • 注册日期2004-07-22
  • 最后登录2004-07-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-07-22 08:49
new太慢了.我试过.
Leopard
驱动老牛
驱动老牛
  • 注册日期2001-07-13
  • 最后登录2021-12-15
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望53点
  • 贡献值0点
  • 好评度19点
  • 原创分0分
  • 专家分0分
  • 社区居民
  • 忠实会员
7楼#
发布于:2004-07-22 09:06
500M? :mad:
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
8楼#
发布于:2004-07-22 11:53
VirtualAlloc
或file mapping
RED_spring
驱动中牛
驱动中牛
  • 注册日期2002-07-28
  • 最后登录2016-11-06
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望19点
  • 贡献值0点
  • 好评度17点
  • 原创分0分
  • 专家分0分
  • 社区居民
9楼#
发布于:2004-07-23 17:09
你为什么要500M的内存? 如果不是特殊须要的话(如Ram
disk),可能要反思一下设计思路是否有问题。
LIUTANG
驱动大牛
驱动大牛
  • 注册日期2001-03-30
  • 最后登录2020-12-27
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望58点
  • 贡献值0点
  • 好评度12点
  • 原创分0分
  • 专家分0分
  • 社区居民
10楼#
发布于:2004-08-04 22:52
进程的内存空间可以有2G,因此直接分配500M也不是不可以,但是正如上面有位兄弟所说,如果不是特殊需要,却是需要反思一下设计思路了。
wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
11楼#
发布于:2004-08-05 10:02
FILE MAPPING 还可以,我就经常用他来生成我的虚拟硬盘文件,一般4G以下,都没问题。
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
s_6666_s_qd
驱动巨牛
驱动巨牛
  • 注册日期2004-08-14
  • 最后登录2006-07-11
  • 粉丝0
  • 关注0
  • 积分199分
  • 威望22点
  • 贡献值0点
  • 好评度14点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2004-08-15 11:35
要这么大的内存??
兄弟最好不要在程序运行时动态申请,要不然程序就成垃圾程序拉
liming
驱动牛犊
驱动牛犊
  • 注册日期2001-06-12
  • 最后登录2010-02-21
  • 粉丝0
  • 关注0
  • 积分116分
  • 威望12点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2004-08-15 14:58
我做过三位重建的系统,需要分配大内存。malloc Win下有时候失败,Linux下没失败过。
steven__xu
驱动牛犊
驱动牛犊
  • 注册日期2004-08-24
  • 最后登录2013-09-03
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望20点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2004-08-24 14:59
如果一个进程只分配一次500MB内存,无论用什么方法都不会失败(除非你把物理内存+虚拟内存用光了),如果多分配几次就难说了。
Sundsea
驱动老牛
驱动老牛
  • 注册日期2003-05-06
  • 最后登录2012-06-05
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望35点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2004-08-24 17:14
VirtualAlloc
或file mapping
游客

返回顶部