2015-04-20 7 views
3

Есть ли способ закрыть несколько ручек для потоков на C++, не закрывая их отдельно? У меня есть несколько потоков с ручками, которые я сохранил в массиве, поэтому я могу использовать WaitForMultipleObjects() перед их закрытием. Я знаю, что могу называть CloseHandle на каждый дескриптор массива (либо по циклу, либо по одному), но мне было интересно, есть ли простой способ закрыть их все. Например, возможно, работает CloseHandle на самом массиве (если это сработает)? Или существует метод по линиям CloseMultipleHandles()? Заранее спасибо.Есть ли простой способ закрыть несколько ручек?

+0

Я подозреваю, что это скорее вопрос WinAPI, чем с ++ – erenon

+0

Просто близко (присоединиться) каждый поток по одному (как часто вы это делаете !?) –

ответ

6

No. Loop and CloseHandle - это самое простое решение. (Не то, что это чрезвычайно сложно реализовать ...).

Но вы всегда можете создать функцию CloseAllHandles, которая принимает массив дескрипторов, чтобы закрыть их ...

+0

Не самый простой, единственный –

+1

@DavidHeffernan: там тоже не легче ;-) Так что это самый простой * и * единственный. – JensG

Смежные вопросы