大牛们请进,一个boost引发的崩溃,debug模式下,该如何处理
大牛们请进,一个boost引发的崩溃,debug模式下
VS2010调试模式下调用堆栈如下。
我想知道这个问题是我们程序里面写的bug,还是boost本身的bug,要是boost本身的bug,那我们是怎样触发的这个bug呢?
恳请大牛指教!!
VS2010调试模式下调用堆栈如下。
我想知道这个问题是我们程序里面写的bug,还是boost本身的bug,要是boost本身的bug,那我们是怎样触发的这个bug呢?
恳请大牛指教!!
- C/C++ code
> X.dll!std::_Debug_message(const wchar_t * message, const wchar_t * file, unsigned int line) Line 15 C++ X.dll!std::_String_const_iterator<char,std::char_traits<char>,std::allocator<char> >::operator*() Line 78 + 0x11 bytes C++ X.dll!boost::asio::detail::buffer_debug_check<std::_String_const_iterator<char,std::char_traits<char>,std::allocator<char> > >::operator()() Line 446 C++ X.dll!boost::detail::function::void_function_obj_invoker0<boost::asio::detail::buffer_debug_check<std::_String_const_iterator<char,std::char_traits<char>,std::allocator<char> > >,void>::invoke(boost::detail::function::function_buffer & function_obj_ptr) Line 154 C++ X.dll!boost::function0<void>::operator()() Line 1013 + 0x16 bytes C++ X.dll!boost::asio::detail::buffer_cast_helper(const boost::asio::const_buffer & b) Line 294 C++ X.dll!boost::asio::buffer_cast<void const *>(const boost::asio::const_buffer & b) Line 311 + 0x9 bytes C++ X.dll!boost::asio::buffer(const boost::asio::const_buffer & b, unsigned int max_size_in_bytes) Line 648 + 0x70 bytes C++ X.dll!boost::asio::detail::consuming_buffers_iterator<boost::asio::const_buffer,boost::asio::const_buffer const *>::consuming_buffers_iterator<boost::asio::const_buffer,boost::asio::const_buffer const *>(bool at_end, const boost::asio::const_buffer & first, const boost::asio::const_buffer * begin_remainder, const boost::asio::const_buffer * end_remainder, unsigned int max_size) Line 60 + 0x79 bytes C++ X.dll!boost::asio::detail::consuming_buffers<boost::asio::const_buffer,boost::asio::const_buffers_1>::begin() Line 163 + 0x2e bytes C++ X.dll!boost::asio::detail::win_iocp_socket_service<boost::asio::ip::tcp>::send_operation<boost::asio::detail::consuming_buffers<boost::asio::const_buffer,boost::asio::const_buffers_1>,boost::asio::detail::write_handler<boost::asio::basic_stream_socket<boost::asio::ip::tcp,boost::asio::stream_socket_service<boost::asio::ip::tcp> >,boost::asio::const_buffers_1,boost::asio::detail::transfer_all_t,boost::_bi::bind_t<void,boost::_mfi::mf2<void,framework::Asyn_HttpClient,boost::system::error_code const &,unsigned int>,boost::_bi::list3<boost::_bi::value<boost::shared_ptr<framework::Asyn_HttpClient> >,boost::arg<1>,boost::arg<2> > > > >::do_completion_impl(boost::asio::detail::win_iocp_io_service::operation * op, unsigned long last_error, unsigned int bytes_transferred) Line 757 + 0xf bytes C++ X.dll!boost::asio::detail::win_iocp_io_service::operation::on_completion(unsigned long last_error, unsigned long bytes_transferred) Line 114 + 0x1c bytes C++ X.dll!boost::asio::detail::win_iocp_io_service::do_one(bool block, boost::system::error_code & ec) Line 545 + 0x10 bytes C++ X.dll!boost::asio::detail::win_iocp_io_service::run(boost::system::error_code & ec) Line 229 + 0xe bytes C++ X.dll!boost::asio::io_service::run() Line 68 + 0xf bytes C++ X.dll!boost::_mfi::mf0<unsigned int,boost::asio::io_service>::call<boost::shared_ptr<boost::asio::io_service> >(boost::shared_ptr<boost::asio::io_service> & u, const void * __formal) Line 40 + 0x17 bytes C++ X.dll!boost::_mfi::mf0<unsigned int,boost::asio::io_service>::operator()<boost::shared_ptr<boost::asio::io_service> >(boost::shared_ptr<boost::asio::io_service> & u) Line 56 C++ X.dll!boost::_bi::list1<boost::_bi::value<boost::shared_ptr<boost::asio::io_service> > >::operator()<unsigned int,boost::_mfi::mf0<unsigned int,boost::asio::io_service>,boost::_bi::list0>(boost::_bi::type<unsigned int> __formal, boost::_mfi::mf0<unsigned int,boost::asio::io_service> & f, boost::_bi::list0 & a, boost::_bi::type<unsigned int> __formal) Line 244 C++ X.dll!boost::_bi::bind_t<unsigned int,boost::_mfi::mf0<unsigned int,boost::asio::io_service>,boost::_bi::list1<boost::_bi::value<boost::shared_ptr<boost::asio::io_service> > > >::operator()() Line 21 C++ X.dll!boost::detail::thread_data<boost::_bi::bind_t<unsigned int,boost::_mfi::mf0<unsigned int,boost::asio::io_service>,boost::_bi::list1<boost::_bi::value<boost::shared_ptr<boost::asio::io_service> > > > >::run() Line 57 C++ X.dll!boost::`anonymous namespace'::thread_start_function(void * param) Line 168 C++ X.dll!_callthreadstartex() Line 314 + 0xf bytes C X.dll!_threadstartex(void * ptd) Line 297 C kernel32.dll!767a1194() [Frames below may be incorrect and/or missing, no symbols loaded for kernel32.dll] ntdll.dll!7738b429() ntdll.dll!7738b3fc()