1樓:網友
你這種方式是比較合理的方式,lpclassname 是要查的,而且也是固定的。
如果你不用 lpclassname ,可以用程式的標題intptr hwnd = findwindow(null, "標題");
showwindowasync(hwnd, 1);
setforegroundwindow(hwnd);
c#多執行緒 乙個緩衝佇列,乙個生產者執行緒,乙個消費者執行緒,這兩個執行緒同時操作這個佇列,必須加互斥鎖嗎
2樓:網友
加互斥鎖的目的,是解決多執行緒訪問同一資源而產生不可預期的異常,那麼你現在是乙個執行緒只負責插入,另一線程負責查詢和刪除,查詢和刪除跟插入沒有關係的話,那麼顯然是不需要執行緒鎖的,你要是問隱患的話,那麼由於多執行緒或者多使用者的原因,頻繁操作幾張相關表,可能造成資料庫的表死鎖。
3樓:網友
如果你是用的佇列不是執行緒安全的, 那麼會存在隱患。
如果你的。net framework>=4的話 系統提供了執行緒安全的佇列
c# 多執行緒函式用類例項作為引數會不會引發執行緒訪問故障
4樓:沈大雙
如果物件例項是唯讀的應該沒問題。
如果有的執行緒讀,有的執行緒修改就會有問題。
可以在修改物件例項的地方加鎖,以確保所有執行緒讀到的物件是一致的。net 提供了三種物件同步機制,可以任選一種:
mutex, manulresetevent, lock
5樓:匿名使用者
操作這個例項物件的**。
lock(obj)
確保乙個時點只有乙個執行緒在操作。
6樓:虎用
不管是不是類的例項。。。在下覺得只要是多執行緒的東東,都涉及到乙個dirty data髒資料的問題。
除非你所有的執行緒都是read only的……否則……必須加鎖。
哪怕只是個變數也一樣。
c#執行緒中方法可以加鎖嗎?
7樓:匿名使用者
lock是鎖住執行緒吧,用protect和final不給呼叫算不。
8樓:匿名使用者
恩,可以的。
先定義lock物件。
object objlock = new object();
在lock塊中呼叫乙個函式。
lock(objlock)
9樓:
可以啊 放在lock塊裡。。
還有一種執行緒同步一系統的方法。。比如用monitor mutex一系統的方法 用來實現執行緒之間的同步。
防止死鎖。
10樓:匿名使用者
我覺得可以加鎖,但是有什麼意義嗎。
¹øóúc#¶àïß³ì(¹øóúëøµäîêìâ) 100
c# 關於多執行緒和cpu的問題
c# 靜態類的多執行緒訪問問題
11樓:網友
可以同時被訪問,但是這種處理方式你需要注意執行緒同步問題,如果你的靜態方法操作同乙個資料來源,可能會有問題,一般都是考慮加執行緒鎖來處理。
12樓:匿名使用者
多執行緒訪問靜態類中的方法最好加上鎖,防止同時訪問而出錯。
static object objtolock=new object();
lock(objtolock)
請教wpf/c#中關於執行緒安全的資料型別,怎麼可以多執行緒訪問的問題
C 多執行緒問題,C 多執行緒程式設計例項
實現應該不難,但你描述的有點不知道你要幹嘛。c 多執行緒程式設計例項 c 中構建多執行緒應用程式 高手進 c 多執行緒處理 非同步多執行緒記憶體釋放主要靠自己,c 的垃圾 機制是,只有當程式段執行完畢後,垃圾 機制才對程式開闢的記憶體進行垃圾 而多執行緒內的程式,特別是客戶端連線,只要客戶端沒有斷開...
多執行緒問題 為什麼無法呼叫Thread類的start方法
我來幫你解決把。雖然我不明白你為什麼說無法呼叫thread類的start方法。首先,你要理解多執行緒實現的2種方法。1.繼承thread類並覆寫run方法 2.實現runnable介面並覆寫run方法。其中這兩種方法中在實際開發和應用中只有第二種是規範和常見的 原因是thread類也是實現了runn...
多執行緒的優點,多執行緒的程式有什麼好處?
使用執行緒可以把佔據時間長的程式中的任務放到後台去處理 使用者介面可以更加吸引人,這樣比如使用者點選了乙個按鈕去觸發某些事件的處理,可以彈出乙個進度條來顯示處理的進度。程式的執行速度可能加快。在一些等待的任務實現上如使用者輸入 檔案讀寫和網路收發資料等,執行緒就比較有用了。在這種情況下可以釋放一些珍...