zoukankan      html  css  js  c++  java
  • c/c++ 使用valgrind检查内存泄漏

    ys@ysm:tests$ valgrind --tool=memcheck --leak-check=full ./a.out
    ==7503== Memcheck, a memory error detector
    ==7503== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
    ==7503== Using Valgrind-3.10.1 and LibVEX; rerun with -h for copyright info
    ==7503== Command: ./a.out
    ==7503==
    tid=7503, constructing 0x5c3e0b0
    tid=7510, 0x5c3e0b0 name=only one
    tid=7503, 0x5c3e0b0 name=only one, changed
    tid=7503, constructing TestNoDestroy 0x5c3e3c0
    with valgrind, you should see 1-byte memory leak.
    tid=7503, destructing 0x5c3e0b0 only one, changed
    ==7503==
    ==7503== HEAP SUMMARY:
    ==7503==     in use at exit: 1 bytes in 1 blocks
    ==7503==   total heap usage: 7 allocs, 6 frees, 476 bytes allocated
    ==7503==
    ==7503== LEAK SUMMARY:
    ==7503==    definitely lost: 0 bytes in 0 blocks
    ==7503==    indirectly lost: 0 bytes in 0 blocks
    ==7503==      possibly lost: 0 bytes in 0 blocks
    ==7503==    still reachable: 1 bytes in 1 blocks
    ==7503==         suppressed: 0 bytes in 0 blocks
    ==7503== Reachable blocks (those to which a pointer was found) are not shown.
    ==7503== To see them, rerun with: --leak-check=full --show-leak-kinds=all
    ==7503==
    ==7503== For counts of detected and suppressed errors, rerun with: -v
    ==7503== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
    ys@ysm:tests$ g++ Singleton_test.cc -std=c++11 -lmuduo_base -pthread -g
    ys@ysm:tests$ valgrind --tool=memcheck --leak-check=full ./a.out
    ==7529== Memcheck, a memory error detector
    ==7529== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
    ==7529== Using Valgrind-3.10.1 and LibVEX; rerun with -h for copyright info
    ==7529== Command: ./a.out
    ==7529==
    tid=7529, constructing 0x5c3e0b0
    tid=7530, 0x5c3e0b0 name=only one
    tid=7529, 0x5c3e0b0 name=only one, changed
    tid=7529, destructing 0x5c3e0b0 only one, changed
    ==7529==
    ==7529== HEAP SUMMARY:
    ==7529==     in use at exit: 0 bytes in 0 blocks
    ==7529==   total heap usage: 6 allocs, 6 frees, 475 bytes allocated
    ==7529==
    ==7529== All heap blocks were freed -- no leaks are possible
    ==7529==
    ==7529== For counts of detected and suppressed errors, rerun with: -v
    ==7529== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
    
    c/c++ 学习互助QQ群:877684253 本人微信:xiaoshitou5854

  • 相关阅读:
    SQL server 2008 建立新用户
    2021.3.22-刷题 (移位)
    2021.3.17刷题-分割回文串
    2021.3.16 刷题--组合总和||(一种组合下元素不可重复选取)
    2021.3.15刷题-组合总和(元素可重复选取)
    2021.3.14刷题-设计哈希映射
    2021.3.13刷题-用拉链法设计哈希集合
    2021.3.12刷题-验证二叉树的前序序列化
    2021.3.11刷题-(删除二叉搜索树中的节点)
    2021.2.28刷题 回溯-电话字母组合
  • 原文地址:https://www.cnblogs.com/xiaoshiwang/p/12701947.html
Copyright © 2011-2022 走看看