Вниз
Скачать: CL | DM;

Почему при присвоении полю потока значения возникает ошибка?   Найти похожие ветки 

 
Aleksandr ©   (2002-06-07 17:04) [0]

Есть у меня поток. Большую часть времени он Suspended. Есть у него пропертя, доступ к которой осуществляется через процедуру этого потока:
private
FEvent : TMailEvent;
procedure SetMailEvent(AEvent : TMailEvent);
public
property Event : TMailEvent read FEvent write SetMailEvent;

Когда из другого потока этому свойству что-либо присваивается:
SmtpThread.Event:=seGetOrders, выполняется его его SetMailEvent:
begin
while (FEvent<>seNone) AND NOT Suspended do
Application.ProcessMessages; //ждать завершения обработки
FEvent:=AEvent;
Resume
end;

Execute:
repeat
case FEvent of
seGetOrders : GetOrders;
...
end;
FEvent:=seNone;
Suspend
until Terminated

Так вот, при входе в SetMailEvent при попытке просто обратиться к значению FEvent Delphi показывает неаксессибельное значение для него, а выполнение первой строки вызывает ошибку... Что тут неправильного?


 
Digitman ©   (2002-06-07 18:33) [1]

>>"..выполнение первой строки вызывает ошибку"

Какую ? Дословно : класс исключения и сообщение об исключении ?



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.007 c
3-64914
dr_neo1
2002-05-24 18:52
2002.06.20
Срочно! Про BDE!!!


1-65123
Reticent
2002-06-05 17:27
2002.06.20
ListView.TopItem


1-65073
Alexander2002
2002-06-10 14:14
2002.06.20
Одновременное выполнение


1-65090
Tahion
2002-06-06 20:13
2002.06.20
Можно ли обьеденить однотипные команды в цыкл или в групу


1-65129
Вовчик
2002-06-06 02:17
2002.06.20
Перерисовка Canvas




   Наверх