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

Вниз

Помогите !!!!! В процедуре Execute не работает Memo1.Lines.Add()   Найти похожие ветки 

 
Amid   (2004-07-15 10:20) [0]

При выполнене процедуры Execute програма блокир., и имено где Memo1.Lines.Add(). Подскажите где ошибка !!!!    

procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);
Var
  c : TMemoryStream;
  s : String;
begin

  c:=TMemoryStream.Create;
  c.LoadFromFile("d:\sointer.gdb");

  with AThread.Connection do
   Begin

         s:=ReadLn;
         Memo1.Lines.Add("Server :"+s);//сдесь Блокируется ????

         If s="QWE" Then
          Begin
             WriteStream(c,true,false);
             Memo1.Lines.Add("Server <-WriteStream");
             Disconnect;
             c.Free;
          End;

   End;

end;


 
tp   (2004-07-15 10:39) [1]

TMemoryStream.Position


 
Ozone ©   (2004-07-15 13:44) [2]

Наученый горьким опытом: "И вообще не помешала бы синхронизация с VCL-потоком, ИМХО"


 
NAlexey ©   (2004-07-15 14:31) [3]

>Amid   (15.07.04 10:20)  
Повторю специально для тебя:
Ты используешь TidThreadMgrPool или TidThreadMgrDefault?


 
Sandman25 ©   (2004-07-15 14:36) [4]

А мне тут больше всего нравится, что C.Free стоит в if вместо finally :)


 
Th   (2004-07-15 14:59) [5]

надо писать процедуру такую вот:

procedure AddToMemo;
begin
Memo1.Lines.Add("Server :"+FStr);
end;

FStr делать полем класса

и в Execute писать так:

Synchronize(AddToMemo);

и так со всеми thread-незащищенными вызовами (VCL, GDI и проч..)



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

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

Наверх




Память: 0.47 MB
Время: 0.052 c
4-1087728431
korvin
2004-06-20 14:47
2004.08.01
"Выгрузить" программу, тормознуть процесс ...


3-1089077187
big_bugzy
2004-07-06 05:26
2004.08.01
Как включить/выключить регистровую зависимость в запросе?


6-1086238856
NorthMan
2004-06-03 09:00
2004.08.01
idTCPClient


1-1089707283
Shc
2004-07-13 12:28
2004.08.01
Как сделать инспектор объектов?


3-1089182014
Rusty
2004-07-07 10:33
2004.08.01
Как определить: существует ли таблица в базе Access?