boost::coroutine 无法显示调用栈

boost::coroutine 无法显示调用栈

(金庆的专栏)

一例因 boost::format() 格式化参数个数错误造成的 coredump,
因为使用了 boost::coroutine, 无法显示异常时的调用栈,
仅显示了异常的类型:

#0  raise()
#1  abort()
#2  __gnu_cxx::__verbose_terminate_handler()
#3  ??
#4  std::terminate()
#5  __cxa_throw()
#6  boost::exception_detail::clone_impl<
      boost::exception_detail::error_info_injector<
        boost::io::too_many_args> >::rethrow()
    at /usr/include/boost/exception/exception.hpp:466
#7  boost::rethow_exception()
    at /usr/include/boost/exception/detail/exception_ptr.hpp:458
#8  boost::coroutine::detail::coroutine_base_resume<
      void(), boost::coroutines::detail::coroutine_base<void()>, void, 0>
        ::resume(void)
    at /usr/include/boost/coroutine/v1/detail/coroutine_base_resume.hpp:57
#9  boost::coroutines::detail::coroutine_op<void(),
      boost::coroutines::coroutine<void(), 0>, void, 0>::operator()(void)
    at /usr/include/boost/coroutine/v1/detail/coroutine_op.hpp:46
#10 PlayerCoro::operator()
    at /home/jinqing/mnt/code/server/loginserver/PlayerCoro.h

上一篇:【原】iOS:一种直接修改frame的某个属性的方法


下一篇:wifi rate vs mode