Win32API質問箱 Build22
■ このスレッドは過去ログ倉庫に格納されています
0038デフォルトの名無しさん
NGNGHANDLE start;
unsigned __stdcall proc(void*)
{
::WaitForSingleObject(start, INFINITE);
return 0;
}
int main(int argc, char* argv[])
{
start = ::CreateEvent(NULL, FALSE, FALSE, NULL);
assert( start );
HANDLE threads[THREADS_COUNT] = {0};
int i;
for(i = 0; i < THREADS_COUNT; ++i) {
threads[i] = reinterpret_cast<HANDLE>(_beginthreadex(0, 0, proc, (void*)i, 0, 0));
assert( threads[i] );
}
::Sleep(10000);
for(i = 0; i < THREADS_COUNT; ++i) {
::SetEvent(start);
::Sleep(0); // <---------- ここ
}
for(i = 0; i < THREADS_COUNT; ++i) {
::WaitForSingleObject(threads[i], INFINITE);
::CloseHandle(threads[i]);
}
■ このスレッドは過去ログ倉庫に格納されています