Главная страница
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.048 c
1-1079610606
Marser
2004-03-18 14:50
2004.04.04
Межплатформенный перенос


1-1079337875
Leech
2004-03-15 11:04
2004.04.04
Архивирование данных


7-1075073038
Slash_from_Ryazan
2004-01-26 02:23
2004.04.04
Как узнать Имя пользователя в Виндовс


14-1078670618
Aga
2004-03-07 17:43
2004.04.04
Resources


3-1076922582
чайник1
2004-02-16 12:09
2004.04.04
Как переиндексировать таблицы