Search
Silverlight 多執行緒
周三, 07/14/2010 - 11:42
請問各位先進, 如果使用 Background 做多執行緒, 那在 Do_work 裡面生成的元件, 如何能夠傳回給主線程用呢? 直接傳回去用一定會出錯, 會變成因線程不同而無法使用. 但又沒法像WPF的 Freeze 跟 Clone 一份在傳回去. 那想要在多線程裡面加載資源, 就變成還是得 Invoke 到主線程裡面去加載, 這樣有大量資源要加載時, 主線程還是被大量的Invoke卡住, 請問各位前輩有沒有解決方案呢?
ps. 我的應用上是同時要加載數千張圖片, 但這圖片有可能在不同物件裡面使用. 分別會在不同的線程上面. 所以原先設計邏輯是透過 Background 後台生成所有ˇ ImageSource 然後放到 List 裡面傳回給主線程, 在由主線程去把圖片分配給其他線程使用.


HP0-J42 HP0-Y40 HP2-B29 HP2-K23 HP2-H11 HP2-K20 HP2-H13 HP2-Z09 HP2-K22 74-404 74-679 70-178 70-690 70-506 70-511 70-515