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

Вниз

убийство и рождение потока   Найти похожие ветки 

 
Andrey Voznesenskiy ©   (2003-09-24 18:18) [0]

По таймеру примерно стоит следующее:
{убийство и рождение потока}

TerminateThread(CommThread,0);
closehandle(CommThread);
WriteComm(chr($11)+chr($11)+chr($30)+chr($31)); CommThread := CreateThread(nil,1,@ReadComm,nil,0,ThreadID);
setthreadpriority(commthread,2);

F1,F1,F1!==== После 1700 запусков потока в W98 или 2100 в XP
CommThread и ThreadID всегда возвращает 0 ( т.е. не создает поток) И СООТВЕТСТВЕННО НИЧЕГО НЕ ПРИНИМАЕТ ИЗ COMa
Что ж делать???
(говорят что нужно выгружать из памяти поток)


 
Polevi ©   (2003-09-24 19:11) [1]

Зачем постоянно убивать поток и создавать его заново ?
И если уж хочется так делать - завершай поток по человечески, TerminateThread крайний случай


 
Suntechnic ©   (2003-09-24 19:24) [2]

Правильно тебе Polevi © советует. Незачем на каждый приём данных создавать/убивать поток, да ещё таким бесчеловечным образом. Создавай один поток и пробуждай его только тогда, когда есть чего читать из порта. Тут тебе может помочь ф-ция WaitCommEvent



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

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

Наверх




Память: 0.47 MB
Время: 0.04 c
14-66125
Романов Р.В.
2003-10-28 09:31
2003.11.20
Как называется программа которая прячит значки из трэя?


4-66167
Pohil
2003-09-24 12:34
2003.11.20
Как мне узнать что винда обновила рабочий стол?


1-66003
Hatawa
2003-11-09 08:53
2003.11.20
Копирование файлов


1-66009
LinOS
2003-11-10 12:09
2003.11.20
Узнать путь из которого запущено приложение


14-66107
Delirium^.Tremens
2003-10-27 09:36
2003.11.20
Прощание с форумом.