簡體   English   中英

多線程和列表框

[英]Multi-Threading and Listbox

我想做的是獲取和刪除具有多個線程的列表框中的第一項,盡管我需要防止線程使用同一項。

例如:線程1和2都搶占1,並嘗試刪除1,但是在此過程中,兩個線程都使用相同的變量,並且由於我正在使用removeat(0),所以刪除了1和2。

防爆列表框

1個

2

我將如何管理線程,以免它們使用/刪除錯誤的變量?

您可以在列表中搜索特定項目並將其刪除.......。

 foreach (string item in toRemove)
 {
   listbox.Remove(item);
 }

要么.........

如果您要為其分配數據源,則再添加一個UNIQUE列,例如Primary Key,並在該唯一列的基礎上,您可以從LISTBOX中刪除項目

您可以將線程鎖定在引用(可能是列表)上,以用於

  1. 尋找物品
  2. 如果找到該項目,則將其刪除

高溫超導

訪問列表框項目時使用鎖定。 使用同一對象鎖定所有位置。

http://msdn.microsoft.com/zh-CN/library/c5kehkcz%28v=vs.80%29.aspx

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM