作者pthuang (◢曉筱◤)
看板C_Sharp
標題[問題] Thread被咬住如何解決?
時間Thu Jul 23 19:26:37 2015
這陣子在設計一支程式 但是遇到了一些瓶頸苦無解法
只好上來求助各位大大
以下先附上程式圖與程式碼
第一個畫面
http://i.imgur.com/HHyVH9V.png
第二個畫面原本的樣子
http://i.imgur.com/Hbg8HPs.png
第一個畫面中的「開始」被按下後第二個畫面現在的樣子
http://i.imgur.com/tOHVzMi.png
程式碼:
http://ge.tt/43veWwK2/v/0
原本期待的狀況 ===============================================
在第一個畫面的開始被按下後跳轉第二個畫面
此時出現圖片與右下角的灰色OK
等待ProcessBar 1.5秒跑滿後(此處在正式的程式中會進行一些計算)
灰色OK會變成綠色的OK
現在發生的問題 ===============================================
在開始按下後正常跳轉第二畫面
但是由於已經開始大量計算1.5秒 因此圖片跟灰色OK被卡住來不及顯示
而且此時由於大量計算 ProcessBar在前半段非常卡頓
待1.5秒過後 圖片跟綠色OK才會出現
但此時ProcessBar的動畫大概也才跑完一半
等到ProcessBar整個動畫跑完已經過了大約兩秒了
想了很久 一直想不到這個問題該如何解決
請版上先進們給個方向 謝謝 m(_ _)m
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.37.100.210
※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1437650804.A.118.html
推 singledream: 不要在UI thread做CPU bounding的事情。 07/23 21:58
→ singledream: 這例子一直去頻繁更新UI也是不好的例子就是了, 07/23 21:59
→ singledream: 請把耗時的時間交給背景去做,以下是更改的例子。 07/23 21:59
※ 編輯: pthuang (114.37.100.210), 07/24/2015 12:50:29