title: Delphi: How to create a Thread Safe global TList?
body: <p>How to create a Thread Safe global TList ?</p>
  
  <pre><code>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.
  </code></pre>
  
  <p>I have two threads, which can write to global_TList , but as I know, it's not thread safe.</p>
  
  <p>So how to make it safe?</p>
  
  <p><em>Delphi 2010, Indy 10, Win7</em></p>