VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 724|回复: 2

[求助] 将文件读入缓在取出时报错

[复制链接]
50_avatar_middle
在线会员 发表于 2015-11-23 15:25:15 | 显示全部楼层 |阅读模式
3驿站币
本帖最后由 wxliang 于 2015-11-23 16:05 编辑

m_CacheCqllardata=new char[m_cqllarfilelen];//m_cqllarfilelen为文件长度
第一步:将文件读入缓存:m_CacheCqllardata
第二步:当有用户连接要求下载时,直接从缓存m_CacheCqllardata中读取数据,下发给用户

问题:在下发时,for读取缓存m_CacheCqllardata中的数据时,当FOR到N次时会报:读取位置 0x0EEAFFF0 时发生访问冲突

由于:我在第一步读入后,存立刻取出,看看,会不会有问题,结果没问题,说明读取的代码是问题的
由于纯种为单线程,应该不会是冲突引起,由于又多次尝试失败之后,我将这个下发线程在启动发到第一步之中,在读完数据到缓存之中后,我在开启下线线程
这时,用户连接进来,下载文件,依旧出这种问题
求高手指点原因
读入:
char data[FILE_SIZE]={0}
while ((len=fread(data,sizeof(char),sizeof(data),fileRead))>0)
                {
                        if(len<=0) break;
                        m_CMain_Connet.m_readcqllarcut++;
                        memcpy(m_CMain_Connet.m_CacheCqllardata+lsen,data,len);
                        lsen+=len;
                        m_CMain_Connet.m_lastlen=len;
                }

读出:
                                while(TRUE)
                                {
                                       
                                                if(pThis->m_readcqllarcut - 1==lirt)
                                                        memcpy(cSendMem->rmgg.sedtxt,pThis->m_CacheCqllardata+FILE_SIZE*lirt,pThis->m_lastlen);
                                                else
                                                        memcpy(cSendMem->rmgg.sedtxt,pThis->m_CacheCqllardata+FILE_SIZE*lirt,FILE_SIZE);               
                       
                                                Sleep(1);
                                                lirt++;
                                       
                                       
                                }





上一篇:有没有用C++编程NAO机器人的伙伴呀
下一篇:c语言复制字符串
55_avatar_middle
在线会员 发表于 2015-11-23 16:24:21 | 显示全部楼层
调试下你那个N是不是已经到了尾部了。
51_avatar_middle
online_admins 发表于 2015-11-24 15:52:28 | 显示全部楼层
嗯,得具体调试调试看看了,看看调用堆栈的 call stack
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号tongdun|网站地图wx_jqr

GMT+8, 2019-4-20 21:18

Powered by Discuz! X3.4

© 2009-2019 cctry.com

快速回复 返回顶部 返回列表