vroot@vroot-ThinkPad-E14:~/604/ZLToolKit/build$ gdb ./bin/test_ringBuffer
(gdb) r
Starting program: /home/vroot/604/ZLToolKit/build/bin/test_ringBuffer
warning: File "/usr/share/gdb/auto-load/lib/x86_64-linux-gnu/libpthread-2.27.so-gdb.py" auto-loading has been declined by your `auto-load safe-path' set to "/home/vroot/".
To enable execution of this file add
add-auto-load-safe-path /usr/share/gdb/auto-load/lib/x86_64-linux-gnu/libpthread-2.27.so-gdb.py
line to your configuration file "/home/vroot/.gdbinit".
To completely disable this security protection add
set auto-load safe-path /
line to your configuration file "/home/vroot/.gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual. E.g., run from the shell:
info "(gdb)Auto-loading safe path"
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
warning: File "/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25-gdb.py" auto-loading has been declined by your `auto-load safe-path' set to "/home/vroot/".
[New Thread 0x7ffff5985700 (LWP 24791)]
[New Thread 0x7ffff5184700 (LWP 24792)]
2021-01-04 10:48:04.463 D test_ringBuffer[24784] util.cpp:324 operator() | Stamp thread started!
[New Thread 0x7ffff4983700 (LWP 24793)]
[New Thread 0x7fffe7fff700 (LWP 24794)]
[New Thread 0x7fffe77fe700 (LWP 24795)]
[New Thread 0x7fffe6ffd700 (LWP 24796)]
[New Thread 0x7fffe67fc700 (LWP 24797)]
[New Thread 0x7fffe5ffb700 (LWP 24798)]
[New Thread 0x7fffe57fa700 (LWP 24799)]
[New Thread 0x7fffe4ff9700 (LWP 24800)]
2021-01-04 10:48:04.465 I test_ringBuffer[24784] EventPoller.cpp:466 EventPollerPool | 创建EventPoller个数:8
[New Thread 0x7fffc7fff700 (LWP 24801)]
2021-01-04 10:48:04.465 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 1
2021-01-04 10:48:04.565 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 2
2021-01-04 10:48:04.666 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 3
2021-01-04 10:48:04.766 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 4
2021-01-04 10:48:04.866 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 5
2021-01-04 10:48:04.966 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 6
2021-01-04 10:48:05.067 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 7
2021-01-04 10:48:05.167 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 8
2021-01-04 10:48:05.267 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 9
2021-01-04 10:48:05.367 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 10
2021-01-04 10:48:05.467 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 11
2021-01-04 10:48:05.568 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 12
2021-01-04 10:48:05.668 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 13
2021-01-04 10:48:05.768 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 14
2021-01-04 10:48:05.868 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 15
2021-01-04 10:48:05.969 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 16
2021-01-04 10:48:06.069 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 17
2021-01-04 10:48:06.169 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 18
2021-01-04 10:48:06.269 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 19
2021-01-04 10:48:06.369 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 20
2021-01-04 10:48:06.470 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 21
2021-01-04 10:48:06.570 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 22
2021-01-04 10:48:06.670 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 23
2021-01-04 10:48:06.770 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 24
2021-01-04 10:48:06.871 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 25
2021-01-04 10:48:06.971 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 26
2021-01-04 10:48:07.071 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 27
2021-01-04 10:48:07.171 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 28
2021-01-04 10:48:07.271 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 29
2021-01-04 10:48:07.372 D test_ringBuffer[24784] test_ringBuffer.cpp:31 onReadEvent | 30
[Thread 0x7fffc7fff700 (LWP 24801) exited]
2021-01-04 10:48:07.472 W test_ringBuffer[24784] test_ringBuffer.cpp:36 onDetachEvent |
terminate called without an active exception
[Thread 0x7fffe7fff700 (LWP 24794) exited]
2021-01-04 10:48:08.473 I test_ringBuffer[24784] EventPoller.cpp:95 ~EventPoller | 0x5555557e62e0
2021-01-04 10:48:08.473 I test_ringBuffer[24784] EventPoller.cpp:95 ~EventPoller | 0x5555557e67a0
2021-01-04 10:48:08.474 I test_ringBuffer[24784] EventPoller.cpp:95 ~EventPoller | 0x5555557e6c60
2021-01-04 10:48:08.474 I test_ringBuffer[24784] EventPoller.cpp:95 ~EventPoller | 0x5555557e70c0
2021-01-04 10:48:08.475 I test_ringBuffer[24784] EventPoller.cpp:95 ~EventPoller | 0x5555557e75e0
2021-01-04 10:48:08.475 I test_ringBuffer[24784] EventPoller.cpp:95 ~EventPoller | 0x5555557e7a70
[Thread 0x7fffe57fa700 (LWP 24799) exited]
[Thread 0x7fffe67fc700 (LWP 24797) exited]
[Thread 0x7fffe5ffb700 (LWP 24798) exited]
[Thread 0x7fffe77fe700 (LWP 24795) exited]
[Thread 0x7fffe6ffd700 (LWP 24796) exited]
Thread 4 "test_ringBuffer" received signal SIGABRT, Aborted.
[Switching to Thread 0x7ffff4983700 (LWP 24793)]
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#1 0x00007ffff6e95921 in __GI_abort () at abort.c:79
#2 0x00007ffff74ea957 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#3 0x00007ffff74f0ae6 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#4 0x00007ffff74f0b21 in std::terminate() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#5 0x00005555555a7993 in std::thread::~thread() ()
#6 0x00007ffff7b39341 in toolkit::EventPoller::shutdown() () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#7 0x00007ffff7b393d8 in toolkit::EventPoller::~EventPoller() () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#8 0x00007ffff7b39552 in toolkit::EventPoller::~EventPoller() () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#9 0x00007ffff7b4bdaa in std::_Sp_counted_ptr<toolkit::EventPoller*, (__gnu_cxx::_Lock_policy)2>::_M_dispose() () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#10 0x00005555555aa92c in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() ()
#11 0x00005555555a8af9 in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() ()
#12 0x00005555555a879e in std::__shared_ptr<toolkit::EventPoller, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() ()
#13 0x00005555555a87ba in std::shared_ptr<toolkit::EventPoller>::~shared_ptr() ()
#14 0x00005555555aa110 in toolkit::RingBuffer<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::attach(std::shared_ptr<toolkit::EventPoller> const&, bool)::{lambda(toolkit::_RingReaderDispatcher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >*)#2}::~_RingReaderDispatcher() ()
#15 0x00005555555b9652 in std::_Sp_ebo_helper<0, toolkit::RingBuffer<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::attach(std::shared_ptr<toolkit::EventPoller> const&, bool)::{lambda(toolkit::_RingReaderDispatcher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >*)#2}, false>::~_Sp_ebo_helper() ()
#16 0x00005555555b966e in std::_Sp_counted_deleter<toolkit::_RingReaderDispatcher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >*, toolkit::RingBuffer<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::attach(std::shared_ptr<toolkit::EventPoller> const&, bool)::{lambda(toolkit::_RingReaderDispatcher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >*)#2}, std::allocator<void>, (__gnu_cxx::_Lock_policy)2>::_Impl::~_Impl() ()
#17 0x00005555555be6c6 in std::_Sp_counted_deleter<toolkit::_RingReaderDispatcher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >*, toolkit::RingBuffer<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::attach(std::shared_ptr<toolkit::EventPoller> const&, bool)::{lambda(toolkit::_RingReaderDispatcher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >*)#2}, std::allocator<void>, (__gnu_cxx::_Lock_policy)2>::~_Sp_counted_deleter() ()
#18 0x00005555555be792 in std::_Sp_counted_deleter<toolkit::_RingReaderDispatcher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >*, toolkit::RingBuffer<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::attach(std::shared_ptr<toolkit::EventPoller> const&, bool)::{lambda(toolkit::_RingReaderDispatcher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >*)#2}, std::allocator<void>, (__gnu_cxx::_Lock_policy)2>::_M_destroy() ()
#19 0x00005555555ad71e in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_weak_release() ()
#20 0x00005555555ab18f in std::__weak_count<(__gnu_cxx::_Lock_policy)2>::~__weak_count() ()
#21 0x00005555555ac478 in std::__weak_ptr<toolkit::_RingReaderDispatcher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, (__gnu_cxx::_Lock_policy)2>::~__weak_ptr() ()
#22 0x00005555555ac494 in std::weak_ptr<toolkit::_RingReaderDispatcher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::~weak_ptr() ()
#23 0x00005555555ac74c in toolkit::_RingReaderDispatcher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::attach(std::shared_ptr<toolkit::EventPoller> const&, bool)::{lambda(toolkit::_RingReader<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >*)#1}::operator()(toolkit::_RingReader<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >*) const::{lambda()#1}::~_RingReader() ()
#24 0x00005555555b625e in std::_Function_base::_Base_manager<toolkit::_RingReaderDispatcher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::attach(std::shared_ptr<toolkit::EventPoller> const&, bool)::{lambda(toolkit::_RingReader<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >*)#1}::operator()(toolkit::_RingReader<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >*) const::{lambda()#1}>::_M_destroy(std::_Any_data&, std::integral_constant<bool, false>) ()
#25 0x00005555555b250c in std::_Function_base::_Base_manager<toolkit::_RingReaderDispatcher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::attach(std::shared_ptr<toolkit::EventPoller> const&, bool)::{lambda(toolkit::_RingReader<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >*)#1}::operator()(toolkit::_RingReader<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >*) const::{lambda()#1}>::_M_manager(std::_Any_data&, toolkit::_RingReaderDispatcher<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::attach(std::shared_ptr<toolkit::EventPoller> const&, bool)::{lambda(toolkit::_RingReader<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >*)#1}::operator()(toolkit::_RingReader<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >*) const::{lambda()#1} const&, std::_Manager_operation) ()
#26 0x00005555555a7fc3 in std::_Function_base::~_Function_base() ()
#27 0x00005555555a7ff6 in std::function<void ()>::~function() ()
#28 0x00007ffff7b4c17e in void __gnu_cxx::new_allocator<std::function<void ()> >::destroy<std::function<void ()> >(std::function<void ()>*) () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#29 0x00007ffff7b4bfbf in void std::allocator_traits<std::allocator<std::function<void ()> > >::destroy<std::function<void ()> >(std::allocator<std::function<void ()> >&, std::function<void ()>*) () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#30 0x00007ffff7b4b83d in std::_Sp_counted_ptr_inplace<std::function<void ()>, std::allocator<std::function<void ()> >, (__gnu_cxx::_Lock_policy)2>::_M_dispose() () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#31 0x00005555555aa92c in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() ()
#32 0x00005555555a8af9 in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() ()
#33 0x00007ffff7b3ede8 in std::__shared_ptr<std::function<void ()>, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#34 0x00007ffff7b3ee04 in std::shared_ptr<std::function<void ()> >::~shared_ptr() () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#35 0x00007ffff7b4b5dc in toolkit::TaskCancelableImp<void ()>::~TaskCancelableImp() () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#36 0x00007ffff7b4c1e7 in void __gnu_cxx::new_allocator<toolkit::TaskCancelableImp<void ()> >::destroy<toolkit::TaskCancelableImp<void ()> >(toolkit::TaskCancelableImp<void ()>*) () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#37 0x00007ffff7b4c03f in void std::allocator_traits<std::allocator<toolkit::TaskCancelableImp<void ()> > >::destroy<toolkit::TaskCancelableImp<void ()> >(std::allocator<toolkit::TaskCancelableImp<void ()> >&, toolkit::TaskCancelableImp<void ()>*) () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#38 0x00007ffff7b4bb25 in std::_Sp_counted_ptr_inplace<toolkit::TaskCancelableImp<void ()>, std::allocator<toolkit::TaskCancelableImp<void ()> >, (__gnu_cxx::_Lock_policy)2>::_M_dispose() () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#39 0x00005555555aa92c in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() ()
#40 0x00005555555a8af9 in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() ()
#41 0x00005555555a809e in std::__shared_ptr<toolkit::TaskCancelableImp<void ()>, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() ()
#42 0x00005555555a80ba in std::shared_ptr<toolkit::TaskCancelableImp<void ()> >::~shared_ptr() ()
#43 0x00007ffff7b42628 in toolkit::ListNode<std::shared_ptr<toolkit::TaskCancelableImp<void ()> > >::~ListNode() () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#44 0x00007ffff7b40950 in toolkit::List<std::shared_ptr<toolkit::TaskCancelableImp<void ()> > >::clear() () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#45 0x00007ffff7b3ec68 in toolkit::List<std::shared_ptr<toolkit::TaskCancelableImp<void ()> > >::~List() () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#46 0x00007ffff7b3e2f7 in toolkit::EventPoller::onPipeEvent() () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#47 0x00007ffff7b38d96 in toolkit::EventPoller::EventPoller(toolkit::ThreadPool::Priority)::{lambda(int)#1}::operator()(int) const () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#48 0x00007ffff7b3ba03 in std::_Function_handler<void (int), toolkit::EventPoller::EventPoller(toolkit::ThreadPool::Priority)::{lambda(int)#1}>::_M_invoke(std::_Any_data const&, int&&) () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#49 0x00005555555ae4de in std::function<void (int)>::operator()(int) const ()
#50 0x00007ffff7b3a831 in toolkit::EventPoller::runLoop(bool, bool) () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#51 0x00007ffff7b41b01 in void std::__invoke_impl<void, void (toolkit::EventPoller::*)(bool, bool), toolkit::EventPoller*, bool, bool>(std::__invoke_memfun_deref, void (toolkit::EventPoller::*&&)(bool, bool), toolkit::EventPoller*&&, bool&&, bool&&) ()
from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#52 0x00007ffff7b3fd1b in std::__invoke_result<void (toolkit::EventPoller::*)(bool, bool), toolkit::EventPoller*, bool, bool>::type std::__invoke<void (toolkit::EventPoller::*)(bool, bool), toolkit::EventPoller*, bool, bool>(void (toolkit::EventPoller::*&&)(bool, bool), toolkit::EventPoller*&&, bool&&, bool&&) () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#53 0x00007ffff7b4c283 in decltype (__invoke((_S_declval<0ul>)(), (_S_declval<1ul>)(), (_S_declval<2ul>)(), (_S_declval<3ul>)())) std::thread::_Invoker<std::tuple<void (toolkit::EventPoller::*)(bool, bool), toolkit::EventPoller*, bool, bool> >::_M_invoke<0ul, 1ul, 2ul, 3ul>(std::_Index_tuple<0ul, 1ul, 2ul, 3ul>) () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#54 0x00007ffff7b4c0ae in std::thread::_Invoker<std::tuple<void (toolkit::EventPoller::*)(bool, bool), toolkit::EventPoller*, bool, bool> >::operator()() () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#55 0x00007ffff7b4be72 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (toolkit::EventPoller::*)(bool, bool), toolkit::EventPoller*, bool, bool> > >::_M_run() () from /home/vroot/604/ZLToolKit/build/lib/libZLToolKit.so
#56 0x00007ffff751b6df in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#57 0x00007ffff77ee6db in start_thread (arg=0x7ffff4983700) at pthread_create.c:463
#58 0x00007ffff6f7671f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
(gdb)