<dfn id="is4kg"></dfn>
  • <ul id="is4kg"></ul>
  • <abbr id="is4kg"></abbr>
  • <ul id="is4kg"></ul>
    <bdo id="is4kg"></bdo>

    曙海教育集團論壇3G手機技術專區Symbian開發 → 如何使用新版HooKlogger查找內存泄露


      共有7154人關注過本帖樹形打印

    主題:如何使用新版HooKlogger查找內存泄露

    美女呀,離線,留言給我吧!
    wangxinxin
      1樓 個性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


    加好友 發短信
    等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
    如何使用新版HooKlogger查找內存泄露  發帖心情 Post By:2010-12-3 13:54:40

    我才學塞班1個多星期吧,對其理解還不是很透徹,不過現在已經會使用HOOKLOGGER來找內存泄露了,這個工具還是蠻準的,由于官方最新版的安裝方法和老版本的稍微有些區別了,所以導致很多人都安裝失敗,我也是看了鬼人王大哥的帖子后才知道有這個軟件的,不過鬼人王大哥的帖子的安裝方法貌似已經過時了,反正我安了后模擬器再也啟動不了了,導致GHOST了1次,還好備份了。
    首先建議大家設置好環境后一定要GHOST備份呀,要是模擬器啟動不了了那就麻煩了,費時費力啊。

    這個方法適用于第3版SDK,貌似新的HOOK工具不能用于低于2版FP3之前的版本,不保證該帖子的時效性,具體還得看hooklogger官網(我是直接學的3版,對2版一點也不懂)。
    首先去官網下載安裝包(如果能從人王大哥那要來老版本的話,可以用他的方法來安裝,不過新版本不用設置環境變量,不用重啟如果沒記錯的話,就1條命令搞定):
    1. 開始-運行 CMD,在控制臺下邊輸入:SetupHooks  S60_3rd_MR:com.nokia.s60

    如上圖所示,因為我已經安裝好了,所以提示我有個目標存在。
    SetupHooks是命令,空格后是我3版的版本號吧,也就是在控制臺下輸入devices后可以看到的,也可能你們和我的不一樣,我們老師推薦弄MR的。
    輸入完命令按完回車后,會有提示,提示很簡單看看就能知道成功與否。

    2.好了,安完后就可以使用它方便快捷的來找內存泄露了,先運行log,再運行模擬器哦,先說下我的環境:3版SDK,IDE安了VS2005和CARBIDE,不過主要用2005開發
    打開hooklogger后標題會顯示沒有和模擬器連接,如下圖:

    接著我們啟動模擬器吧(我估計是安裝某個環節出了點問題,反正一啟動就提示leave了(出現時會自動進入debug模式,選continue就行),不過無視它吧,狂點運行肯定可以啟動模擬器)
    啟動成功后進入我們的目標工程,運行一遍直到內存泄露為止,接著模擬器界面出現提示說內存泄露在內存的某個位置,如下圖:

    接著我們切換到log的界面吧,找到Threads(最后1個)這個標簽,把下拉條拉到最底部,我們能看到我們工程的這個線程,如下圖:

    這個是我的工程名,一時心急,名字敲錯了,嘿嘿,這個一般也是在線程的最底部的位置,接著右鍵單擊,選擇如圖:

    接著log會自己跳轉到Heap標簽下,里面顯示了內存地址,如圖:

    對比一下模擬器報錯的地址很輕易就找到了位置,我們雙擊一下,自動進去一個窗口,里面顯示了1堆代碼,一般里面列出的第1個函數就是內存泄露的位置,如圖(該點是從人王大哥那學到的):

    接著我們雙擊進入這個函數,也會自動蹦出1個對話框窗體,里面高亮部分就是我們出現泄露的地方,如圖:

    接著我們就可以去代碼里找了,注意不一定出現泄露的地方就是在該句代碼附近,而只是表明,這個泄露跟這句代碼是有關系的,果然我這new了1個空間,很可能是我沒有釋放導致泄露的,那就去釋放的地方看看吧。

    先解釋一下我這個有意的泄露吧,我這定義了1個局部指針,但不是在這個類里析構把它放掉的,我定義了1個rpointerarray數組保存這些指針,而這些指針都是保存在我自定義的1個9宮格類里,所以自然我們要去我9宮格類的析構里看看到底問題出在哪,如圖:

    果然,我的數組只reset了沒有把new在堆上的數據給釋放,所以導致泄露了,只要把注掉的那句代碼替換reset就OK了。
    接著我們重新build一下工程吧,這個時候可能會報錯,沒事,轉到log界面,這時它會碰出1個詢問框,大概就是左邊是個relloc按鈕右邊是個release按鈕,我選擇了左邊的按鈕,接著build一切OK。
    END。
    由于本人接觸計算機時間有限,這也是在技術論壇上的第1個帖子,我是今年7月才第1次接觸C語言的,現在塞班也才學1個多星期,肯定會有所紕漏,希望大家指正,在次再次感謝人王大哥的帖子,如果有人轉載希望表名出自devdiv

    支持(0中立(0反對(0單帖管理 | 引用 | 回復 回到頂部

    返回版面帖子列表

    如何使用新版HooKlogger查找內存泄露








    簽名
    主站蜘蛛池模板: 日本精品久久久久护士| 美女被吸乳老师羞羞漫画| 少妇高潮喷水久久久久久久久久| 亚洲人成在线播放网站岛国| 爱呦视频在线播放网址| 国产亚洲综合久久| 3751色视频| 一个人看的免费高清视频www | 12至16末成年毛片| 大胸小子bd在线观看| 久久久久亚洲AV无码麻豆| 最近中字视频在线观看| 人妻少妇精品无码专区动漫| 精品少妇一区二区三区视频| 国产成人无码一区二区三区| 99re6在线播放| 天天看天天干天天操| 久久99精品久久久久久hb无码| 日韩在线一区视频| 亚洲成a人片在线观看天堂无码| 爱情岛永久地址www成人| 国产一区二区三区夜色| 韩国三级hd中文字幕| 国产精品无码久久久久| xinjaguygurporn| 忘忧草视频www| 久久免费观看视频| 日韩免费观看视频| 亚洲国产成人久久综合区| 欧美精品v国产精品v日韩精品| 午夜福利一区二区三区在线观看| 色妞妞www精品视频| 国产日韩欧美亚欧在线| 99久久国产综合精品swag| 天天爱天天做天天爽天天躁| 中文字幕精品一区| 日本VA欧美VA精品发布| 亚州av综合色区无码一区| 欧式午夜理伦三级在线观看| 亚洲欧美日韩高清在线电影| 欧美黑人巨大xxxxx|