社区
C++ 语言
帖子详情
遇到内存冲突棘手的问题,请教高手指点
xiaohanzizichuan
2010-12-18 01:07:01
程序在PC机上运行时还正常,为什么在服务器上(windows server 2003系统)运行时,就出现冲突的问题,汇编指令停留在
01A573B8 lock xadd dword ptr [eax],ecx
程序主要是进行视频分析的,对采集到的每一帧数据(BYTE型),送到分析核心,进行分析,然后显示分析结果。
在服务器上采集数据是没有问题的。
请高手指点,不胜感激!
...全文
107
9
打赏
收藏
遇到内存冲突棘手的问题,请教高手指点
程序在PC机上运行时还正常,为什么在服务器上(windows server 2003系统)运行时,就出现冲突的问题,汇编指令停留在 01A573B8 lock xadd dword ptr [eax],ecx 程序主要是进行视频分析的,对采集到的每一帧数据(BYTE型),送到分析核心,进行分析,然后显示分析结果。 在服务器上采集数据是没有问题的。 请高手指点,不胜感激!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xiaohanzizichuan
2010-12-18
打赏
举报
回复
传入的BYTE型数据经过分析后,再传出来,通过画图显示出分析的视频结果。
开始怀疑是传入数据和处理数据存在冲突,但是将SetData()执行时设置上标志位,也是不管用。
求指点啊!非常感谢
xiaohanzizichuan
2010-12-18
打赏
举报
回复
AddCore()是添加一路分析。
下面是Setdata函数:
void SetData(unsigned char *data,int len,int key,int framenum,int delay)
{
WaitForSingleObject(corebuffsHandle, INFINITE);
map<int,CoreBuff*>::iterator iBuffReceive = coreBuffReceive.find(key);
if(iBuffReceive != coreBuffReceive.end())
{
memcpy(iBuffReceive->second->dbuff, data, len);
iBuffReceive->second->isUsed = FALSE;
iBuffReceive->second->cframe = framenum;
iBuffReceive->second->delay = delay;
}
SetEvent(corebuffsHandle);
}
xiaohanzizichuan
2010-12-18
打赏
举报
回复
代码:
void CTasMuView::DealBmp2(int index)
{
int m_width=0;
int m_height=0;
ULONG m_size=0;
BYTE * m_data=new BYTE[230400];
BOOL fff1=Return_Size1(index,m_width,m_height,m_size,m_data);
if(fff1)
{
if(!isNew1)
{
CRect rect;
GetClientRect(&rect);
SetSubWindowSize(index);
myoutput[index].m_display_para.iDisplay = true;//有视频被播放
sjheight=rect.Height();
sjwidth=rect.Width();
aBitMapShow[index].bmiHeader.biHeight =m_height;
aBitMapShow[index].bmiHeader.biWidth = m_width;
aBitMapShow[index].bmiHeader.biSizeImage =m_size;
swidth[index] = m_width;
sheight[index] = m_height;
CDC *dc=GetDC();
hDrawResult=dc->GetSafeHdc();
AddCore(index,m_width,m_height,24,15);
strIndex[index].Format("USB摄像头监控");
isNew1=TRUE;
}
if(isNew1)
{
SetData(m_data,m_size,index,framecount[index],50);//将获得的BYTE型数据送到分析核心,进行分析,并进行显示
Sleep(20);
}
}
delete []m_data;
}
luciferisnotsatan
2010-12-18
打赏
举报
回复
c++写的,就把相关代码贴出来
你就给条汇编指令,别人最多也就告诉你这条指令是什么意思
就想叫yoko
2010-12-18
打赏
举报
回复
在PC机上运行的时间是否足够长呢
在PC机上没出过错不一定就是在PC机上不会出错
xiaohanzizichuan
2010-12-18
打赏
举报
回复
请高手指点呀!不胜感激
xiaohanzizichuan
2010-12-18
打赏
举报
回复
程序是用C++写的,运行时,出现的上述错误
haorengoodman
2010-12-18
打赏
举报
回复
汇编?不懂,等楼下的来给答案。
游戏画面就弹出
内存
不能为read修复工具
如果去
请教
一些「
高手
」,得到的回答往往是「Windows就是这样不稳定」之类的义愤和不屑。其实,这个错误并不一定是Windows不稳定造成的。本文就来简单分析这种错误的一般原因。 一、应用程序没有检查
内存
分配失败 ...
Windows操作系统出现
内存
错误怎么办? 「“0X????????”指令引用的“0x00000000”
内存
,该
内存
不能为“read”或“written”」!!
Windows操作系统出现
内存
错误怎么办使用Windows操作系统的人有时会
遇到
这样的错误信息: 「“0X????????”指令引用的“0x00000000”
内存
,该
内存
不能为“read”或“written”」,然后应用程序被关闭。 如果去
请教
...
“0X00000000”指令引用的“0x00000000”
内存
,该
内存
不能为“read”或“written”
如果去
请教
一些「
高手
」,得到的回答往往是「Windows就是这样不稳定」之类的义愤和不屑。其实,这个错误并不一定是Windows不稳定造成的。本文就来简单分析这种错误的一般原因。 一、应用程序...
0X000000该
内存
不能为read written的解决思路(艾孜尔江撰稿)
出现这个现象有方面的,一是硬件,即
内存
方面有
问题
,二是软件,这就有多方面的
问题
了。 一:先说说硬件: 一般来说,电脑硬件是很不容易坏的。
内存
出现
问题
的可能性并不大(除非你的
内存
真的是杂牌的一塌徒地),...
“0X????????”指令引用的“0x00000000”
内存
,该
内存
不能为“read”或“written”
在网上查到的资料,留着备用 使用Windows操作系统的人有时...如果去
请教
一些「
高手
」,得到的回答往往是「Windows就是这样不稳定」之类的义愤和不屑。其实,这个错误并不一定是Windows不稳定造成的。本文就来简单分
C++ 语言
64,654
社区成员
250,484
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章