推 toki:沒遇過這種,貼picturebox那段上來大家研究看看? XD 11/23 09:47
藉這個thread請教一個最近碰到的問題.
FormMain.cs是UI,
FileIO.cs是做file i/o (duh!) 的worker thread.
我在FileIO裡面使用FormMain.Invoke來call FormMain裡頭的function,
去變更UI的一個PictureBox.
我程式是在只有一個CPU的laptop上面寫的,
跑了很多次都沒問題.
但是移到SMP或Core Duo的工作站上跑的時候,
就會出現object is currently in use elsewhere的exception,
PictureBox也會出現可怕的Red Cross.
請問一下這樣有可能的原因是什麼?
Control.Invoke不是會強制在UI Thread執行嗎?
謝謝 :)
* * *
補充一下,
如果我把變更PictureBox的function改成變更Form的Text,
那就一切正常.
搜尋一下發現好像蠻多object is...的錯誤都和Bitmap或是PictureBox有關...@@
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.64.17.11
※ 編輯: ithinkurdumb 來自: 210.64.17.11 (11/23 03:07)