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

Вниз

результат выполнения потока   Найти похожие ветки 

 
juice   (2005-02-18 13:52) [0]

Каким образом лучше всего получать результат выполнения потока ?


 
Reindeer Moss Eater ©   (2005-02-18 13:56) [1]

Зависит от того, что из себя представляет этот результат.


 
Fay ©   (2005-02-18 13:59) [2]

Лучше банковским переводом


 
juice   (2005-02-18 14:05) [3]

Да пусть будет integer. Хранить результат как свойство самого обьекта потока - плохо. т.к. разные бывают случаи с уничтожением. Если поток будет заносить результат в чужой обьект - совсем не красиво (чем я сейчас и пользуюсь). Как делают профи? :)


 
Reindeer Moss Eater ©   (2005-02-18 14:06) [4]

Посылают сообщение какому-нибудь окну. Например форме.


 
Digitman ©   (2005-02-18 14:09) [5]


> разные бывают случаи с уничтожением


и самый дурной из них - FreeOnTerminate


 
MBo ©   (2005-02-18 14:10) [6]

ReturnValue
WaitFor
OnTerminate


 
Alexander Panov ©   (2005-02-18 14:16) [7]

juice   (18.02.05 14:05) [3]


Вариантов масса, и все как раз зависит от конкретного случая.
Приводи пример, тебе ответят.


 
juice   (2005-02-18 15:29) [8]


> и самый дурной из них - FreeOnTerminate

Почему так? Удобно все таки!


 
Alexander Panov ©   (2005-02-18 15:35) [9]

juice   (18.02.05 15:29) [8]
Почему так? Удобно все таки!


При автоматическом уничтожени объекта TThread(FreeOnTerminate=True) ты не сможешь получить после окончания вычислений ReturnValue.


 
Digitman ©   (2005-02-18 15:57) [10]


> juice   (18.02.05 15:29) [8]
> Почему так? Удобно все таки!


завершая в произв.момент времени приложение (ExitProcess) в надежде что треды якобы успеют сами разрушить свои объекты и корректнго освободить тем самым занятые ими ресурсы, ты не учитываешь одно - ExitProcess просто снимет с выполнения и уничтожит трэды процесса (как ОС-объекты) , ВНЕ зависимости, успели ли они на тот момент завершить "свои дела" или не успели ..

когда же ты ЯВНО даешь трэду команду "закруглиться" и ЯВНО же ждешь фактического его завершения, после чего ЯВНО же уничтожаешь его VCL-экземпляр. все происходит ожидаемо. по-божески, корректно, в соответствии с ожидаемой же тобой логикой освобождения ресурсов



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

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

Наверх




Память: 0.49 MB
Время: 0.042 c
4-1106055469
Gummer
2005-01-18 16:37
2005.03.06
Hiding the application


1-1108965730
Unknown
2005-02-21 09:02
2005.03.06
Возникло 3 вопроса:


3-1107338338
MakedoneZ
2005-02-02 12:58
2005.03.06
Про DBGrid и БД, а так же просмотрите код.


1-1109182411
Kerk
2005-02-23 21:13
2005.03.06
"Разделяемый" массив.


1-1108449058
PSA
2005-02-15 09:30
2005.03.06
TThread любимый.