Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.04;
Скачать: CL | DM;

Вниз

Глюк в инди при работе с потоками?   Найти похожие ветки 

 
Zelius ©   (2004-01-28 14:29) [0]

Ставлю TidHttpServer, даю ему TidThreadMgrPool в качестве менеджера потоков, ставлю максимальное кол-во потоков. Теперь, если кол-во потоков превышает максимальное, то поток осовобождается даважды!

destructor TIdThread.Destroy;
begin
 FreeOnTerminate := FALSE; //prevent destroy between Terminate & WaitFor
 inherited Destroy; //Terminate&WaitFor <---  здесь
 Cleanup; <--- и здесь вызов приходит в TIdThreadMgrPool.ReleaseThread, где он удаляется еще раз!
 FreeAndNil(FLock);
end;

вопрос, что делать?


 
Reindeer Moss Eater ©   (2004-01-28 14:32) [1]

А зачем в уже вызванном(!) деструкторе говорить, что деструктор при останове потока вызывать не нада?


 
Zelius ©   (2004-01-28 14:42) [2]

Я выдрал этот кусок из idThread, ничего своего туда не приписывал, так сказать поведение по умолчанию!


 
Zelius ©   (2004-01-28 16:11) [3]

Похоже, что это глюк из 9.0.10 версии, в 9.0.14 не вылезает.



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

Текущий архив: 2004.04.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.032 c
1-1079112277
gh
2004-03-12 20:24
2004.04.04
Uses ..


7-1076403470
Димос
2004-02-10 11:57
2004.04.04
Очистка корзины


14-1078671515
Delphi5.01
2004-03-07 17:58
2004.04.04
Adobe Premiere


1-1079592884
sav
2004-03-18 09:54
2004.04.04
Процессы и потоки


14-1078469470
Sergey_Masloff
2004-03-05 09:51
2004.04.04
Хорошая книга по полевой хирургии для начинающего