void _fastcall ExpensIoThread::Execute(void)//发起一个I/O操作
{
unsigned long ByteNumber=0;
while(!Terminated)
{
if (_BeginProduce->WaitFor(600)==wrSignaled)//有信号状态
{
if(_commusb->Hpipe != INVALID_HANDLE_VALUE)
{
ReadFile(_commusb->Hpipe, &_buffer[0], _numbe, &ByteNumber, _mosRead);
}
}
}}
void _fastcall AcceptDataThread::Execute(void) //收数据线程
{
unsigned long nBytesRead=0;
while(!Terminated)
{
if ( GetOverlappedResult(_commusb->Hpipe, _mosRead,&nBytesRead, true))
{
if (nBytesRead==_resvnumber)
{
}
}
}
}
现在的情况是 GetOverlappedResult(_commusb->Hpipe, _mosRead,&nBytesRead, true) 读的结果不等于 nBytesRead 时也 返回 true该 如何解决呢??
{
unsigned long ByteNumber=0;
while(!Terminated)
{
if (_BeginProduce->WaitFor(600)==wrSignaled)//有信号状态
{
if(_commusb->Hpipe != INVALID_HANDLE_VALUE)
{
ReadFile(_commusb->Hpipe, &_buffer[0], _numbe, &ByteNumber, _mosRead);
}
}
}}
void _fastcall AcceptDataThread::Execute(void) //收数据线程
{
unsigned long nBytesRead=0;
while(!Terminated)
{
if ( GetOverlappedResult(_commusb->Hpipe, _mosRead,&nBytesRead, true))
{
if (nBytesRead==_resvnumber)
{
}
}
}
}
现在的情况是 GetOverlappedResult(_commusb->Hpipe, _mosRead,&nBytesRead, true) 读的结果不等于 nBytesRead 时也 返回 true该 如何解决呢??
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货