• TUser © (21.02.05 16:40) [0]
    Надо ли его использовать во Lazarus'е? Я когда-то пробовал - все нормально работало и без синхронизации, а вот в версии 1.9.6 появилась поддержка Synchronize'а

    ftp://ftp.freepascal.org/pub/fpc/beta/whatsnew.txt
  • DrPass © (28.02.05 01:50) [1]
    Его и в Delphi можно не использовать, это зависит от ситуации. Далеко не каждый код без синхронизации с основным потоком приведет к ошибкам
  • TUser © (28.02.05 11:54) [2]
    Мой код требовал синхронизации (если бы его компилировать в Delphi)

    procedure TMyThread.Execute;
    begin
      while not Terminated do begin
         write(' -- >');
         readln (FTemp);
         DOWORK; // Synchronize(DOWORK);
         if FTemp <> '' then
            writeln(FTemp);
         end;
    end;

    procedure TMyThread.DOWORK;
    begin
      FTemp:=LowerCase(FTemp);
      if FTemp = 'exit' then
         Application.Terminate
         else
      if FTemp = 'show' then
         Form1.Show
         else
      if FTemp = 'hide' then
         Form1.Hide;
         
      if (FTemp = 'help') or
         (FTemp = '?') then
         FTemp:='This is a thread demo'
         else FTemp:='';
    end;

Есть новые Нет новых   [119286   +21][b:0][p:0.001]