![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| gutalin69 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 15.4.2014 Репутация: нет Всего: нет |
Подскажите пожалуйста почему при запуске даже пустого потока, их функции не выполняются, а сам поток висит в состоянии Wait????
Очень срочно нужно понять.... Если запускаю вне тела функции выполняются, но отладка до них доходит в произвольном порядке, т.е выполняются сначала те функции, которые должны были выполнится ПОСЛЕ, а потом запускается SocketThread DWORD ThreadId; HANDLE hSocketThread=CreateThread(NULL,0,SocketThread,NULL,0,&ThreadId); |
|||
|
||||
| feodorv |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2214 Регистрация: 30.7.2011 Репутация: 11 Всего: 45 |
В принципе, поток должен что-то делать, ожидать каких-то событий и т.д. Пустой поток ничего не делает, он завершается в тот же момент, как запущен. Но, да, его состояние оценивается системой как живого (то есть хотя сам поток завершился, но все его структуры и описатели живы), ибо по окончании потока необходимо закрыть хендлер потока. Пока хенделер потока не закрыт, то по нему можно узнать такие вещи, как завершился ли поток, а если завершился, то с каким кодом. Вот ради этого кода (а он может понадобиться программисту) уже завершившийся поток и числится в свободном состоянии. Если же состояние потока, его ожидание или код возврата не нужны, то можно сразу после создания потока закрыть его хендлер. Тогда не должно быть никакого wait (кстати, откуда Вы взяли это самое wait) для пустого потока. Хендлер закрывается через CloseHandler(hSocketThread). Расшифруйте, пожалуйста. -------------------- Напильник, велосипед, грабли и костыли - основные инструменты программиста... |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |