很多時候,我們都需要在另外乙個執行緒中訪問ui控制項,而windows phone中的控制項是非執行緒安全的。微軟給我們提供了跨執行緒訪問控制項的方法
,在using system.windows.threading;
dispatcher.begininvoke(() =>);
只需在**中使用該方法便可以操作控制項。
在**中的 ()=>{} 是乙個匿名函式
它是乙個lambda表示式,lambda是乙個匿名函式,它可以包含表示式和語句,並且可以建立委託或表示式目錄樹型別。
所有的lambda表示式都使用運算子 => 讀做 「goes to 「,運算子左邊是輸入引數(如果有),右邊包含表過式或語句塊,lambda表示式 x=> x+x; 讀做 " x goes to x plus x",可以將此表示式分配給委託型別
如所示**:
delegateint del(int
i);del mydelegate = x => x +x;
int y = mydelegate(5); //
y = 10
這個比較簡單,具體還需要自己摸索
跨執行緒訪問控制項
using system using system.collections.generic using system.componentmodel using system.data using system.drawing using system.linq using system.text u...
跨執行緒訪問控制項
程序是作業系統分配資源的最小單位,程序之間隔離,作為資源的擁有者,在建立 cpu處理時切換以及撤銷的過程中花費時間較長,而執行緒是作業系統任務排程的最小單元,對於每個程序中由多個列表內容執行緒執行對應的方法體,完成後立即釋放,這樣作業系統對執行緒處理起來更加容易,實現了併發程式。using syst...
c 跨執行緒訪問控制項
訪問 windows 窗體控制項本質上不是執行緒安全的。如果有兩個或多個執行緒操作某一控制項的狀態,則可能會迫使該控制項進入一種不一致的狀態。還可能出現其他與執行緒相關的 bug,包括爭用情況和死鎖。所以,確保以執行緒安全方式訪問控制項是非常重要的。private static object dat...