当前位置: 技术问答>linux和unix
读写大文件出错
来源: 互联网 发布时间:2015-12-29
本文导语: 用 int iHndW = open(sWName,O_WRONLY); 和 int iHndR = open(sRName,O_RDONLY); 之后是read 和write 读取超过1G的文件会报错,内存不够,求解决办法,或者用什么方法读写 Out of memory saving lines for undo | ...
用
int iHndW = open(sWName,O_WRONLY); 和
int iHndR = open(sRName,O_RDONLY);
之后是read 和write
读取超过1G的文件会报错,内存不够,求解决办法,或者用什么方法读写
Out of memory saving lines for undo
int iHndW = open(sWName,O_WRONLY); 和
int iHndR = open(sRName,O_RDONLY);
之后是read 和write
读取超过1G的文件会报错,内存不够,求解决办法,或者用什么方法读写
Out of memory saving lines for undo
|
虽然我没有试着用程序去read一个1G的文件,
但我知道read一个1G的文件肯定是不行的!
内存怎么交换这么大的数据啊?
lseek,好像是设置什么偏移量的,不知可否解决楼主这个问题?
我也没试过,呵呵!
但我知道read一个1G的文件肯定是不行的!
内存怎么交换这么大的数据啊?
lseek,好像是设置什么偏移量的,不知可否解决楼主这个问题?
我也没试过,呵呵!
|
莫非与 unbufferedI/O有关系
|
你的i_blockSize肯定不是1G吧,呵呵呵。正常情况下你的buffer有4k-16k左右就行了,每次写完后再读,肯定不会出错。看你的出错提示好像是undo的问题,用这个了吗