• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            專職C++

            不能停止的腳步

              C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
              163 Posts :: 7 Stories :: 135 Comments :: 0 Trackbacks

            常用鏈接

            留言簿(28)

            我參與的團隊

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            在使用appium的過程中,發現有內存泄露,最后就process out of memory了,就掛了
            網上用使用增加運行內存的方式(還是抗不住),沒辦法,就只好找出內存泄露的地方了
            對node.js很多文章,都是說用memwatch,結果發現,這個是一個死項目,有四年沒有更新過了,在現有的環境下,是沒有辦法編譯的。
            然后又有一個memwatch-next,顧名思義,就是memwatch的下一個版本,結果是果然也可以編譯,一些事件也支持,但是要headdump后要end后,就掛了。
            國內,也只有這么多了,用百度,你一萬年都別想解決問題,估計找成人不宜的東西,百度世界第一名,google也不比過百度
            只好翻出去,有人說到node-headdump,然后,就可以用了。
            首先它有C++的部分,所以需要安裝C++編譯環境  
            1.安裝node-gpy
            cmd>npm install -g node-gyp
            2.安裝python 2.7.x 
            安裝過程,默認就可以了
            如果你有裝多個python,如3.x,運行的時候,需要指定python 2.7
            cmd>node-gyp --python /path/to/python2.7
            然后配置python環境
            cmd>npm config set python python2.7
            強烈要求,不要用3.x,只用2.7.x就可以了  
            為什么?因為2.7.x比3.x成熟,另外3.x和2.x差別太大了,很難兼容。
            3.安裝windows編譯工具
            在windows的cmd下(需管理員權限)
            npm install --global --production windows-build-tools
            4.安裝C++編譯器
            有兩個選擇,
            一個是Visual C++ Build Tools ,地址:http://landinghub.visualstudio.com/visual-cpp-build-tools
            這是一個獨立的編譯和庫(有2015,2017兩個版本,隨便選一個,我建議2015,因為2017還不知道有什么問題)
            另一個是安裝vs2015 最新版本是vs2015 up3了  用搜索一下,就可以找到安裝文件
            安裝完成后,配置環境:
            cmd>npm config set msvs_version 2015
            有了上面四步:node-heapdump的編譯環境就OK了
            5.安裝node-heapdump
            在你項目所在目錄,執行命令
            cmd>npm install heapdump
            我的環境是node 6.9.x 所以用最新版本就可以了
            下面,我們就來使用heapdump
            首先引用heapdump
            import heapdump from "heapdump";

            function showMemory() {
                function f(v) {
                    if (v < 1024) return v.toString(10);
                    else if (v < 1048576) {   //1M
                        return (v / 1024).toFixed(2) + "KB";
                    }
                    else if (v < 1073741824) //1M
                    {
                        return (v / 1048576).toFixed(2) + "MB";
                    }
                    else {
                        return (v / 1073741824).toFixed(2) + "GB";  //1G
                    }
                }
                {
                    //打印并顯示當前堆的情況 可以去掉這個部分
                    let d = process.memoryUsage();
                    let strRss = f(d.rss);
                    let strheapTotal = f(d.heapTotal);
                    let strheapUsed = f(d.heapUsed);
                    let strDate = new Date().toLocaleString();
                    console.log(`memory: ${strDate}: rss:${strRss}, heapTotal:${strheapTotal}, heapUsed:${strheapUsed}`, );
                }
                heapdump.writeSnapshot('d:/tmp/dump/' + Date.now() + '.heapsnapshot');  //堆快照必須.heapsnapshot,否則在后面使用chrome的時候,會報錯。
            }

            setInterval(showMemory, 5000);  //這里設定了,每5秒打印一次。

            然后就可以運行了。
            在得到很多heapsnapshot后,再用chrome瀏覽器,按F12,進入開發模式
            然后如下圖所示操作,將相鄰的幾個快照依次加載
            加載后,處理方式有四種,分別是summary,comparison,cotainment,statistics,這里,我選擇comparison,就能看到當前內存快照和上一個內存快照的差異。
            posted on 2017-02-23 14:28 冬瓜 閱讀(2512) 評論(0)  編輯 收藏 引用 所屬分類: appiumjavascript
            色综合久久精品中文字幕首页| 久久精品国产乱子伦| 亚洲综合精品香蕉久久网| 国产精品va久久久久久久| 久久亚洲精品视频| 国产精品永久久久久久久久久 | a级成人毛片久久| 久久久久久无码Av成人影院 | 狠狠综合久久AV一区二区三区| 久久精品女人天堂AV麻| 国产激情久久久久影院小草| 国产精品成人久久久久久久| 国产成人精品久久亚洲高清不卡 国产成人精品久久亚洲高清不卡 国产成人精品久久亚洲 | 久久无码AV一区二区三区| 亚洲国产精品成人AV无码久久综合影院 | 久久精品国产清自在天天线| 熟妇人妻久久中文字幕| 亚洲国产成人精品无码久久久久久综合| 日韩精品久久久久久免费| 欧美久久久久久午夜精品| 久久人人超碰精品CAOPOREN| 久久青青草原国产精品免费| 日韩精品无码久久久久久| 亚洲中文久久精品无码| 久久久久人妻一区精品果冻| 国产精品久久亚洲不卡动漫| 狠狠88综合久久久久综合网| 韩国免费A级毛片久久| 久久精品国产亚洲av影院| 亚洲伊人久久大香线蕉苏妲己| 国产成人精品久久二区二区| 亚洲中文字幕无码久久综合网| 99久久99久久精品国产片| 国产精品久久久久久久久久免费| 国产精品无码久久综合网| 国产视频久久| 欧美麻豆久久久久久中文| 亚洲欧美成人久久综合中文网| 日日躁夜夜躁狠狠久久AV| 久久精品国产黑森林| 久久国产欧美日韩精品免费|