设为首页 加入收藏

TOP

Linux中打印函数堆栈
2014-11-24 08:10:23 来源: 作者: 【 】 浏览:0
Tags:Linux 打印 函数 堆栈

Linux中打印函数堆栈


mongo源码目录下的util/stacktrace.cpp文件:


// Copyright 2009. 10gen, Inc.



#include "mongo/util/stacktrace.h"


#include
#include
#include
#include
#include
#include


namespace mongo {
static const int maxBackTraceFrames = 20;


void printStackTrace(std::ostream& os) {
void *b[maxBackTraceFrames];


int size = ::backtrace(b, maxBackTraceFrames);
for (int i = 0; i < size; ++i) {
os << std::hex << b[i] << std::dec << ' ';
}
os << std::endl;


char** strings;
strings = ::backtrace_symbols(b, size);
for (int i = 0; i < size; ++i) {
os << ' ' << strings[i] << '\n';
}
os.flush();
::free(strings);
}
}


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇iOS的Bundle资源束制作 下一篇Struts2集成Spring

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·“我用Java 8”已成 (2025-12-26 11:19:54)
·下载 IntelliJ IDEA (2025-12-26 11:19:52)
·Java是什么?(通俗 (2025-12-26 11:19:49)
·雾里看花:真正意义 (2025-12-26 10:54:36)
·C++——模板(超详细 (2025-12-26 10:54:34)