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

Вниз

Tread   Найти похожие ветки 

 
Roman_Tutov   (2002-12-03 16:06) [0]

Создал тред . Хочу его принудительно завершить из кода самого треда
КАК ?


 
Ihor Osov'yak ©   (2002-12-03 16:14) [1]

Выйти из тела процедуры потока. Если с процедуры понавызывали бог знает чего (то есть сидим на неком уровне стека вызовов процедур), то можна сгенерировать некое исключение, которое ловим в теле главной процедуры потока и далее выход с процедуры ..


 
MBo ©   (2002-12-03 16:18) [2]

terminate


 
Roman_Tutov   (2002-12-03 16:21) [3]

Хм..что значит выйти из тела процедуры потока ?


 
sniknik ©   (2002-12-03 16:40) [4]

метод потока Execute в нем в рабочем цикле, если то exit; не дажидаясь конца цикла и проверки на Terminated.


 
Ihor Osov'yak ©   (2002-12-03 16:44) [5]

2 MBo © (03.12.02 16:18)

Terminate - это фишка TThread... А нигде не говорилось, что речь идет об инстанции TThread. Кроме того эта фишка целиком предполагает корректную реализацию анализа Terminated в Execute..

2 Roman_Tutov (03.12.02 16:21)

Процедура потока, это:


HANDLE CreateThread(
LPSECURITY_ATTRIBUTES lpThreadAttributes, // access privileges
DWORD dwStackSize, // say 0 for default
LPTHREAD_START_ROUTINE lpStartAddress, // pointer to function
LPVOID lpParameter, // value passed to function
DWORD dwCreationFlags, // active or suspended
LPDWORD lpThreadId ); // system returns ID here


для случая юзания вышеупомянутого TThread тело метода Execute можно считать в первом приближении функцией потока (он вызывается с "настоящей" функции потока, кажись ThreadProc ...,
смотрите плиз classes.pas


Выйти - ну exit, на завершальное end нарватся ...




 
Толик ©   (2002-12-03 17:10) [6]

есть такая ф-я, звать её ExitThread, вот она и прекращает выполнение кода процедуры потока, или EXIT, что в данном случае то же самое.


 
Roman_Tutov   (2002-12-04 10:48) [7]

Спасибо. Все получилось



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

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

Наверх




Память: 0.48 MB
Время: 0.017 c
4-36459
KoluChi
2002-10-29 12:32
2002.12.12
WinExec. Код возврата


1-36135
Николай Быков
2002-12-03 15:38
2002.12.12
Как лучше? (Borland Pascal 7.0)


14-36406
SONJA
2002-11-20 13:03
2002.12.12
Кто знает PHP, помогите!!! Проблемы с сессией...


1-36262
vitnt
2002-12-02 13:37
2002.12.12
Как сделать функцию PosN


14-36412
Acorus
2002-11-22 15:58
2002.12.12
Где взять DsgnIntf.dcu ?