为什么WaitForMultipleObjects函数一直返回错误代码6
我写了一个很简单的测试程序。如下:
int main(int argc, char* argv[])
{
std::list<std::string> EventNameList;
std::string EventName;
EventNameList.push_back( "NameFirst" );
EventNameList.push_back( "NameSecond" );
EventNameList.push_back( "NameThird" );
std::list<std::string>::iterator ListItem;
HANDLE * phEventArray = new HANDLE[EventNameList.size()];
for( ListItem = EventNameList.begin(); ListItem != EventNameList.end(); ListItem++, phEventArray++ )
{
*phEventArray = CreateEvent( NULL, TRUE, FALSE, ((std::string)*ListItem).c_str() );
}
DWORD ret = WaitForMultipleObjects( EventNameList.size(), phEventArray, TRUE, 600000 );
if ( ret != WAIT_OBJECT_0 || ret != WAIT_TIMEOUT )
{
std::cout << "error: " << GetLastError() << std::endl;
}
return 0;
}
不知道为什么返回的错误代码一直是6啊。大家帮忙测测?