如果你是初接觸WE不久的讀者,恭喜你,你可以選擇不看下去。
本教學主要針對正在學習觸發編寫一段時間的人。已經清楚明白和捉過不少記憶體漏失的人。看下去也是白費時間。
倒不如去學一學更高級的技術。
========================================================
首先向各位WE的新血講解一下
甚麼是記憶體漏失?
記憶體漏失主要係因為電腦因為要儲存變量所定義既handle資料時,日常中的Integer(整數)、Boolean(布林)、Real(實數)、code(程式碼)和string(字串),這些Data不是之外,其餘都需要進行處理。
而記憶體漏失是指WE中,常常出現一大堆1234、ABCD的觸發。
而在這些觸發中,因為編寫到最後使用了一大堆變量的動作(特別是創造類型的觸發和技能),最後自以為結束,測試後沒有任何問題。但是!你卻沒有做到將用完的東西刪除或放回原位。
這可以比喻成:
"你去完廁所、刷完屁股同埋洗埋對手。但係唔沖廁所!"
"某新血同學" : "咁又點呀?下一個會沖嫁啦"
"但係,如果下一個又好似上一個咁去完又唔沖。一直重覆重覆(諗起都有D核凸),最後個廁所想沖都沖唔到"
換言之,記憶體漏失是一個非常大的問題而且每位WE的新血們都需要學習的一個課程。
"某新血同學" : "唔學有咩問題?"
"無野嫁,幅圖越玩越疾咁解姐,反正你部I7頂得順"
"某新血同學" : "但係記憶體漏失聽落幾科學..但係無得學..."
"所以而家教你點學!"
================================================
記憶體漏失?為什麼會有記憶體漏失!?
記憶體漏失的主要原因都是因為新血們在編寫過程中要求電腦開啟一塊空白內存儲存資料,但使用後卻沒有刪除。久而久之,電腦的執行速度會變慢。或者我們舉出一個例子說明:
"今天某新血同學一時心血來潮製造了一招核爆的技能"
"某新血同學" : "招技會係施法點整一個大爆炸既特效部隊"
"岩先就講左記憶體漏失係因為用左既內存無將佢刪除番,咁你覺得你自己招技有咩問題?"
"某新血同學" : "問題? 我都無用變量,有咩問題? 阿Sir.你係唔係玩野呀"
"你係無用變量黎儲存個施法點既位置,但係你用左WE的原有變量(施法點)創造左一個點黎記錄"
"某新血同學" : "吓?......."
"如果我係幅圖用核爆,但係點擊既位置我無用變量,電腦都無放內存黎儲存。點解佢會放到出黎?"
"其實原因係你用左施法點呢個WE創造公司(B社)所定立既變量,所以電腦都係有用內存黎儲存-點-呢個資料"
"簡單D講,我要係L位置到放招技能,電腦就會係L到畫一個符號記錄,之後再由觸發動作讀存運行技能"
"但係,個符號呢? 唔理佢? 當隱形?(事實係唔存在)"
"不過係電腦入面已經留下一個永不消失的痕跡(我還是處的!請不要太用力)"
"可能你覺得自己係幅圖頂多用一兩百次或者多DD,但係一幅圖唔係得招技能,而且唔係得你一個人玩"
"呢個時候聯想起N年前,信長11.2B(紅字)係網吧非常多人玩(我細細個___時代已經玩過N次,所以我都係一個有技術既玩家!),大家越玩越到後期,裝備神裝唔洗講,部腦又好似神化左咁,越黎越慢。呢個其實就係記憶體漏失既問題,明白未?"
"某新血同學" : "Upload緊,仲要少少時間消化"
"某新血同學" : "仲有一個問題,其實你講左一大堆廢話,我明就係明。不過點解決?"
"話左係概念,只係概念已經咁大堆廢話,要埋解決方法!? 你想WE區變成廢水區?"
引用:
觸發動作的大致內容:在施法點創造一個特效部隊(核爆),X秒後刪除最後創造的部隊
=============================================================
下篇基礎記憶體漏失解決方法的發行
日期:暫時因為一時心血來潮所以黎造福大家,而我....繼續潛水JASS的魔王之路中,至於究竟出唔出睇一睇有無再心血來潮同大家既反應
[
本帖最後由 殺戮乂之夜 於 2012-2-27 04:15 編輯 ]