看板 Flash 關於我們 聯絡資訊
今天總算有機會嘗試AS3的非同步運算(Asynchronous Computation)了~ http://cjcat.blogspot.com/2009/12/asynchronous-computation.html 我學弟修了一門"Social Networks"的課 他打算用AS3載入一個有80000個node的graph的XML資料 解析之後用自己的class來把這個graph建構出來 結果他遭遇到了Flash Player "一個frame佔用15秒即死當" 的特性 然後我也忘記這個特性怎麼規避 不過就算能夠讓Flash Player過了15秒還繼續執行 一個frame佔用超過15秒絕對不是好事 因為開工作管理員一看,就會發現CPU佔用100% 於是我想起了Trevor McCauley寫的AS3非同步運算教學 就來試著用這個方法來解決學弟的問題 簡單來說,每個frame我只分配給他16毫秒(約相當於60fps) 當時間到了,迴圈就自動跳出,結束這個frame,並且記錄現在的進度 下一個frame再繼續運算 這樣的話,就不會讓Flash Player的一個frame死當,也不會占用CPU資源太多 有興趣的人可以參考一下:) -- CJ Cat = Croa'J Cat = Cockroach Cat = 西街凱特 = 蜚蠊貓 = 蟑螂貓 Blog http://cjcat.blogspot.com Gallery http://cjcat2266.deviantart.com ptt2 Board CJWorkshop - 阿多比閃光(Adobe Flash)研討區 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.45.161.60
kuwood:雖然還要一段時間才可能碰到這個...推推推XD 12/07 19:14
Angelliya:推薦這篇 :] 12/07 19:19
etrexetrex:超強 12/07 20:15
wljimkk:os? 排班? 先來先做?? 12/08 02:57
wljimkk:沒想到系統程式的概念還可以用到FLASH上... 12/08 02:58
metalalive:推McCauley , 不過我應該是我懶,還是絕得那有點麻煩:p 12/10 22:45
cjcat2266:除了這招,我也想不出有什麼方法可以降CPU消耗量了... 12/10 23:28
GGPlay:先用ByteArray壓縮儲存XML可以優化一下嗎 12/13 13:46
cjcat2266:那會需要Flex SDK的[Embed] tag 12/13 16:12
cjcat2266:不過還是得透過XML() method將String轉成XML 12/13 16:13
GGPlay:不過還有一種思路,這是在外國Flash的blog看來的,提供下當 12/14 13:37
GGPlay:當作思考,當然是麻煩點,但是可以節省比較多流量,就是把 12/14 13:38
GGPlay:XML存進ByteArray,壓縮後再寫入local,另外再做一個編輯器 12/14 13:40
GGPlay:可以讀取二位的xml然後也提供儲存到本地的方法。詳情:blog 12/14 13:41
GGPlay:另外一個用短url(上個忘了..)http://tinyurl.com/ycc3dds 12/14 13:50
GGPlay:希望對你們的project有幫助^^ 12/14 13:50
klit1987:推 12/24 06:30