-6

たくさんのアイテムが入ったリストビューがあります。同期したアイテムを削除したいのですが。それは可能ですか?ListViewに同時にアクセスしてそのアイテムを削除するスレッドが約100個あります。

例えば:

 procedure Thread1 ; stdcall;
 var
  item : TlistItem;
 begin
  //...
  item.delete;
  //...
 end;

 procedure Thread2 ; stdcall;
 var
  item : TlistItem;
 begin
  //...
  item.delete;
  //...
 end;

 /.... and so on

スレッドは同時に起動されます(おそらくそれらの間の1msの違い)。次に、多くのエラーとAccessViolationsが発生します。助けてください。ありがとうございました :)

4

1 に答える 1

3

私があなたなら、メインアプリケーションスレッドとすべての更新スレッドがアクセスでき、同期できるデータ構造を作成します。これがVCLコントロールの更新に使用するのは、メインアプリスレッドのみです。あなたが行く必要がある方法。

于 2012-05-31T07:43:23.953 に答える