Delphi: Как создать потокобезопасный глобальный TList? - PullRequest
8 голосов
/ 07 декабря 2011

Как создать потокобезопасный глобальный TList?

unit Unit1;
interface
uses
    ...;
type
  TForm1 = class(TForm)
  procedure FormCreate(Sender: TObject);
  end;

var
  Form1: TForm1;
  global_TList: TList; // Not thread safe?

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
// something
end;

end.

У меня есть два потока, которые могут писать в global_TList, но, как я знаю, это не безопасно для потоков.

Так, как сделать это безопасно?

Delphi 2010, Indy 10, Win7

1 Ответ

19 голосов
/ 07 декабря 2011

Использовать TThreadList. Проблема решена.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...