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

Вопрос по потокам   Найти похожие ветки 

← →
Smithson ©   (2002-04-27 11:55) [0]

Обнаружил интересную вещь. Операционная система Windowx XP + Delphi 5.5
Запускаю ШЕСТЬ потоков. Диспетчер задач показывает, что для данного приложения работает ВОСЕМЬ
потоков (6+2). Одни дополнительный - это основной поток программы, а второй? Далее. Завершаю потоки.
ВСЕ. Для данного приложения остается от ТРЕХ до ПЯТИ активных потоков. Это как? Может кто-нибудь
разъяснить такое чудо?


← →
Vovchik ©   (2002-04-27 12:31) [1]

Лучше говорить "нитей", а не "потоков". "Поток" - это попсовый перевод.

Откуда берётся лишняя нить, не могу сказать, такое надо видеть. Может быть, дельфи делает две нити? Сделай просто пустое приложение, запусти и посмотри склько там нитей.

А что касаемо остающихся после убиения нитей, то есть один тонкий момент. В SDK написано, что нить остаётся в памяти, пока на неё не будут закрыты все хэндлы. Т.е., если ты нить убил, но не сделал CloseHandle(), то формально объект остаётся в памяти. Посмотри как это выглядит в Линухе. Там нити остаются, у них меняется атрибут, по которому можно понять, что нить мёртвая и от неё только "название" осталось.


← →
Smithson ©   (2002-04-27 13:06) [2]

>> Может быть, дельфи делает две нити? Сделай просто пустое приложение, запусти и посмотри
>> склько там нитей.

Делал. Одна. Мог бы предположить, что какой-либо из потоков (извини, привык) виснет - но нет, делал
простой цикл в Execute - все тоже. Может, XP?


← →
Vovchik ©   (2002-04-27 13:13) [3]

Может и ХР. Я с ней немного поигрался, она несколько раз висла намертво и часто падала в синий экран. Она пока ещё очень сырая, но чтобы неправилько определять кол-во нитей - это слишком.

А пробовал с CloseHandle разбираться?


← →
NailS ©   (2002-04-27 19:39) [4]

Что потоки делают? Какие компоненты используются?
Довольно часто компоненты создают свои потоки (например для работы с сетью).
Попробуй поискать когда запускается лишний поток ;)
А то что потоки остаются, значит ты их просто не останавливаешь, а где, как и почему без кода можно долго гадать.



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

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



Память: 0.46 MB
Время: 0.007 c
3-39652
Rail
2002-04-17 13:58
2002.05.13
Чем отличается Deny и Revoke в MS SQL Server


6-39824
zondor
2002-03-01 12:05
2002.05.13
проблемы с Telnet


1-39725
Oleg_er
2002-04-27 12:10
2002.05.13
Расписать период времени


1-39698
Riko
2002-04-29 14:59
2002.05.13
Обработка CloseQuery.


4-39914
alya
2002-03-13 13:00
2002.05.13
Окно поверх остальных




   Наверх