我在编程时碰到以下问题:
client端:发信息过来:
在server端,从csocket 类继承生成一个CServerSocket类
void CServerSocket::OnReceive(int nErrorCode)
{// TODO: Add your specialized code here and/or call the base class
BOOL flag;
flag=true;
char pCommand[1024]="";
int ByteCount=0;
ByteCount=Receive(pCommand,1000);
if (ByteCount>1000||ByteCount<=0)
{AfxMessageBox("error at receive date",MB_OK);
flag=false;
}
pCommand[ByteCount]=0;
m_pMainFrame->receive.Format(pCommand);//m_pMainFrame->receive类型为cstring;
if(m_pMainFrame->receive=="死了吗")
{SendTo("还活着",6,8888,"127.0.0.1");
//return;
flag=false;
}
if(flag)
m_pMainFrame->VodPlay();//一个处理函数自己编写的
CSocket::OnReceive(nErrorCode);
}
由于client 端不断的发信息过来,而sever端处理需要时间,
特别是m_pMainFrame->VodPlay(),会不会时间一长导致蓝屏,我的程序有时候能运行几个小时,但没超过1天的,就会蓝屏。是不是还会有其他原因?
client端:发信息过来:
在server端,从csocket 类继承生成一个CServerSocket类
void CServerSocket::OnReceive(int nErrorCode)
{// TODO: Add your specialized code here and/or call the base class
BOOL flag;
flag=true;
char pCommand[1024]="";
int ByteCount=0;
ByteCount=Receive(pCommand,1000);
if (ByteCount>1000||ByteCount<=0)
{AfxMessageBox("error at receive date",MB_OK);
flag=false;
}
pCommand[ByteCount]=0;
m_pMainFrame->receive.Format(pCommand);//m_pMainFrame->receive类型为cstring;
if(m_pMainFrame->receive=="死了吗")
{SendTo("还活着",6,8888,"127.0.0.1");
//return;
flag=false;
}
if(flag)
m_pMainFrame->VodPlay();//一个处理函数自己编写的
CSocket::OnReceive(nErrorCode);
}
由于client 端不断的发信息过来,而sever端处理需要时间,
特别是m_pMainFrame->VodPlay(),会不会时间一长导致蓝屏,我的程序有时候能运行几个小时,但没超过1天的,就会蓝屏。是不是还会有其他原因?
你用的是什么操作系统? NT win2k 等会比较鲁棒一些。============================================================================
http://www.betajin.com/alphasun/index.htm
DocWizard C++程序文档自动生成工具 | Wave OpenGL 水波与动模拟和显示
蓝屏,(报错是vxd引起的异常)
要不就重启
是不是你的m_pMainFrame->VodPlay();//一个处理函数自己编写的
有MEMORY LEAK OR 占用的CPU太大