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

Вниз

По потокам (Thread)   Найти похожие ветки 

 
Programist   (2003-03-04 16:06) [0]

Создаю поток:


M: TMyThread;
...
begin
M:=TMyThread.Create(False);
M.FreeOnTerminate:=True; //чтобы он завершился как Execute завериштся...
end;


1. Но вот как ему потом M.Free сделать???
2. И как его можно заврешить раньше, если цикла внутри нет, который бы проверил M.Treminated?


 
Strumpf   (2003-03-04 16:27) [1]

>Но вот как ему потом M.Free сделать???

Он сам убьется после завершения Execute.


 
MBo   (2003-03-04 16:34) [2]

вот только в конструктор нужно передать True, а после установки FreeOnTerminate сделать Resume


 
Programist   (2003-03-05 09:55) [3]

toStrumpf - точно убъётся???

toMBo - понял.


А как в поток передать изначально параметры?!


 
REA   (2003-03-05 10:03) [4]

До запуска (наверно) можно обычные переменные класса установить.

>2. И как его можно заврешить раньше, если цикла внутри нет, который бы проверил M.Treminated?

А вот это уже не так просто - стандартный Free насколько я помню выставляет Terminated и ждет завершения потока. Можно попробовать Suspend+Free, но тоже осторожно.
Дальше мои домыслы и безосновательные утверждения:
Там появляется какая-то разница между просто выходом и выходом при выходе из приложения или DLL. В разных версиях Delphi механизм выхода из потока разный.


 
NailS   (2003-03-05 12:16) [5]


> И как его можно заврешить раньше, если цикла внутри нет,
> который бы проверил M.Treminated?


А что там есть?

> Можно попробовать Suspend+Free, но тоже осторожно.

Не поможет. В деструкторе будет ожидаться завершение потока (D6).

BOOL TerminateThread(
HANDLE hThread, // handle to thread
DWORD dwExitCode // exit code
);




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

Форум: "Основная";
Текущий архив: 2003.03.17;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.016 c
1-54053
StarCon
2003-03-05 08:11
2003.03.17
DOA


3-53898
Ренат
2003-02-25 13:54
2003.03.17
Обновление VIEW в Interbase


14-54199
alikm
2003-03-02 18:35
2003.03.17
Анекдот....


1-54003
[BAD]Angel
2003-03-05 20:46
2003.03.17
Вопрос по службам (Services)


1-54088
BillyJeans
2003-03-05 13:29
2003.03.17
Новый class и его property





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский