今日、Zarko Gajic の記事を読むと混乱します。
「マルチスレッド Delphi データベース クエリ」
記事の URL: http://delphi.about.com/od/kbthread/a/query_threading.htm
ソースコード: http://delphi.about.com/library/weekly/code/adothreading.zip
「TCalcThread.Execute」プロシージャのコードで、次のコードを Synchronize() メソッドに配置して実行する必要がないのはなぜですか?
Line 173: ListBox.Clear;
Line 179: ListBox.Items.Insert(......);
Line 188: ListBox.Items.Add('*---------*');
Line 195: TicksLabel.Caption := 'Ticks: ' + IntToStr(ticks);
これらのコードは VCL コンポーネントを操作しており、UI の更新に関連しています。私の知る限り、これらの操作はスレッド同期を使用し、メイン スレッドで実行する必要があります。私の知識に欠陥がありますか?