Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Tread [D5, NT4]


Roman_Tutov ©   (2002-12-03 16:06:00) 

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


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

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


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

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


Ihor Osov'yak   (2002-12-03 16:44:00) [3]

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 нарватся ...



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

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


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

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


MBo   (2002-12-03 16:18:00) [6]

terminate


Ihor Osov'yak   (2002-12-03 16:14:00) [7]

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


Наверх

Титульная страница Поиск, карта сайта Написать письмо