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

Вниз

Создание отдельной нити, но не простой...   Найти похожие ветки 

 
SPeller ©   (2003-05-11 14:24) [0]

Всем доброго времени суток!
У меня встала необходимость создать в своей программе нить (Thread), которая будет висеть постоянно и обрабатывать посылаемые из главного потока команды. Слышал я о такой функции, как PostThreadMessage, которая шлёт сообщение потоку и не требует наличия в потоке окна. Так вот, хочу спросить, как мне обустроить получение и обработку таких сообщений отдельным потоком, как заставить поток ждать сообщение (чтобы не загружать процессор циклом), как всё это дело грамотно реализовать. За полезные примеры буду очень благодарен.


 
Polevi ©   (2003-05-11 19:08) [1]

MsgWaitForMultipleObjects


 
Polevi ©   (2003-05-11 19:22) [2]

.. или GetMessage

procedure TT.Execute;
var
msg:TMsg;
begin
while not Terminated do
begin
GetMessage(msg,0,0,0);
case msg.message of
WM_QUIT:Terminate;
end;
end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
t:=TT.Create(false);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
PostThreadMessage(T.ThreadID,WM_QUIT,0,0);
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
7-68093
Berzercer
2003-05-13 16:57
2003.07.21
УБРАТЬ иконку из ALT-TAB


14-68072
Юрий Зотов
2003-03-04 23:16
2003.07.21
---|Ветка была без названия|---


3-67669
*pavel
2003-06-26 09:24
2003.07.21
Настройка Oracle 8i (win98)


14-67984
VDen
2003-07-03 17:44
2003.07.21
Выполнить код из ресурса


1-67906
Sword-Fish
2003-07-08 12:32
2003.07.21
Создание кнопки