Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.03.06;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.036 c
1-1108995207
red_imp
2005-02-21 17:13
2005.03.06
Как запустить досовую программу с ключами из другой директории


10-1085559771
kost
2004-05-26 12:22
2005.03.06
Как создать простое приложение corba для работы с БД


1-1108756422
olookin
2005-02-18 22:53
2005.03.06
Вопрос про TShellTreeView


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


1-1108899432
physic
2005-02-20 14:37
2005.03.06
TChart не строит ординату больше 1817





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский