最近在开发cics应用程序,发现cics有一个不错的功能 在程序挂掉的(例如读写非法地址,异常未捕获等)时候会打印函数堆栈到日志文件里面 不知道这个功能是怎么实现的? 大家有何想法
请教各位, 在Linxu C++程序中,捕获了一个exception,然后想打印出throw exception的堆栈信息,如何处理?用backtrace()/backtrace_symbols()只能得到exception handling的堆栈。
程序进入一个异常流程,导致程序core了,但是通过core时堆栈的信息看,有个函数的第一个参数变成了第二个参数。这是怎么回事呢? --- called from signal handler with signal 11 (SIGSEGV) --- fea06f90 _doprnt (2f16798e, 0, f2bfe658, 1, b2, ff0000) + 1b2c fea090c0 vsnprintf (f2bfe8f4, 1fe, 2f16798e, f2bfec74, 0, f2bfec0d) + 5c 002ba0c0 mmsOMCFailReport (2, 2, 485c04, 27a, ffff, ffffffff) + 2b0 00180cc0 ...
#include
#include
我在uclinux下的应用程序,内存分配还用的是malloc(因为用了商业库,里边的内存分配是malloc),现在程序一般运行一段时间后就退出,请问这样的问题应该从哪方面着手查找?还有我看介绍说uclinux下最好用预分配内存缓冲池,请问这个需要自己写缓冲池的相关函数吗? 我是新手,希望大家多帮忙
win32下的一个c++程序,运行过程中偶尔会异常退出,退出前无任何提示。请问有好的办法来定位错误吗?直接通过F5走调试模式是不行的,因为不知道什么时候会退出,另外,运行的机器上是不装VC等工具的。 看到有Dr.Watson系统日志的介绍,不知道这种方法是否可行。
刚刚接触 AIX5.3系统,需要把原来得程序移植到该系统下, 编译环境如下: thead model: aix gcc version 4.2.0 //代码逻辑是多线程得程序, 发现线程内函数抛出异常会导致主程序崩溃得现象, 代码大概如下: //异常类 class MyException {public: MyException(){} virtual ~MyException(){}; }; //某个会抛出异常得函数 void gTest() { throw MyException(); } //线程函数体 void *thd_func(void *ptr) { ...