Вниз
Скачать: CL | DM;

CloseHandle   Найти похожие ветки 

 
wicked ©   (2004-09-05 23:35) [0]

нужно ли вызывать CloseHandle для Handle"а завершившегося thread"а?....
и чем чревато, если его не вызывать?...


 
akvilon ©   (2004-09-05 23:46) [1]

ну конечно нужно, как только thread перестал тебе быть нужен, сразу closehandle, чревато тем, что объект ядра Thread будет существовать в памяти по меньшей мере до окончания работы твоей программы.


 
wicked ©   (2004-09-05 23:54) [2]

угу, спасибо, недоглядел в msdn"е....
тогда возникает законный вопрос - можно ли делать CloseHandle этому handle"у внутри самого thread"а?...

зачем это нужно - хочется иметь механизм, позводяющий запускать коротенькие асинхронные функции, не заботясь в главном потоке об освобождении ресурсов... естественно, что сам handle thread"а нам в дальнейшем не нужен...


 
akvilon ©   (2004-09-06 00:43) [3]

Создавая поток, он получает число пользователей объекта ядра "поток" равное 2:
1) твоя прога
2) сам поток
вызывая CloseHandle уменьшаешь число пользователей на один, остается только сам поток как пользователь. Так что получается что можно.
А лучше так
CreateThread(...);
и дальше сразу CloseHandle


 
wicked ©   (2004-09-06 01:21) [4]

спасибо... всё работает как надо....
а я то хотел городить конструкцию для передачи хендла потока в него самого для последующего убийства...


> Создавая поток, он получает число пользователей объекта
> ядра "поток" равное 2:
> 1) твоя прога
> 2) сам поток

а где об этом можно прочесть?...


 
akvilon ©   (2004-09-06 19:20) [5]

в рихтере



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.021 c
14-1095943959
Ломброзо
2004-09-23 16:52
2004.10.10
Дурацкий вопрос про GDI


3-1094728910
Heretic
2004-09-09 15:21
2004.10.10
По поводу процедуры "BeforePost" в Ttable


1-1096094700
Leaner
2004-09-25 10:45
2004.10.10
Контрольная сумма файла.


1-1096015702
Аня
2004-09-24 12:48
2004.10.10
help-файлы


3-1094638324
Zif
2004-09-08 14:12
2004.10.10
Как посчитать количество всех строк...




   Наверх