Вниз
Скачать: 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 вся ветка

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



Память: 0.47 MB
Время: 0.022 c
14-1108491536
Fr+++
2005-02-15 21:18
2005.03.06
Небольшой вопрос по PHP


14-1108606999
Steepe Wolf
2005-02-17 05:23
2005.03.06
Update Delphi6


1-1108348081
first_aid
2005-02-14 05:28
2005.03.06
Скрытие показ колонок TListView?


6-1103762014
Zelius
2004-12-23 03:33
2005.03.06
Долго обрабатывается запрос


4-1106206229
DmiSb
2005-01-20 10:30
2005.03.06
Печать из IE




   Наверх