📄 out
字号:
Flat profile:Each sample counts as 0.01 seconds. % cumulative self self total time seconds seconds calls s/call s/call name 23.95 6.34 6.34 18718385 0.00 0.00 cirbuf<40960u>::get(char*, unsigned int) 20.25 11.70 5.36 2076300 0.00 0.00 cirbuf<40960u>::put(char const*, unsigned int) 14.51 15.54 3.84 20608601 0.00 0.00 cirbuf<40960u>::fetch(char*, unsigned int) 7.14 17.43 1.89 20752047 0.00 0.00 ksocket::unpack() 5.33 18.84 1.41 4 0.35 5.89 completeWorker::run() 2.83 19.59 0.75 35156941 0.00 0.00 Scope_lock::Scope_lock(Lock&) 2.76 20.32 0.73 35044055 0.00 0.00 Scope_lock::~Scope_lock() 2.57 21.00 0.68 4159655 0.00 0.00 mlist<IO_CONTEXT*>::push_back(IO_CONTEXT*&) 2.04 21.54 0.54 41351776 0.00 0.00 cirbuf<40960u>::getrsize() const 2.04 22.08 0.54 2 0.27 1.01 IOworker::run() 1.96 22.60 0.52 39566635 0.00 0.00 Lock::unlock() 1.61 23.03 0.43 39589392 0.00 0.00 Lock::lock() 1.36 23.39 0.36 2085614 0.00 0.00 ksocket::recv(unsigned int) 1.34 23.74 0.36 4140550 0.00 0.00 mlist<IO_CONTEXT*>::front() 1.06 24.02 0.28 2020927 0.00 0.00 IOHandler::recvIO(cond_queue<mlist<IO_CONTEXT*> >*, unactive_mgr*, IO_CONTEXT*) 1.02 24.29 0.27 2083224 0.00 0.00 IOHandler::recv(IO_CONTEXT*) 0.68 24.47 0.18 2080035 0.00 0.00 IOCP::WaitForIOComplete(IO_CONTEXT*&) 0.51 24.61 0.14 9074653 0.00 0.00 mlist<IO_CONTEXT*>::empty() 0.51 24.74 0.14 2078472 0.00 0.00 WaitForComplete(int, IO_CONTEXT*&) 0.47 24.87 0.13 4123013 0.00 0.00 mlist<IO_CONTEXT*>::pop_front() 0.42 24.98 0.11 2268232 0.00 0.00 IOCP::dispatchIO(IO_CONTEXT*) 0.38 25.08 0.10 2079538 0.00 0.00 cond_queue<mlist<IO_CONTEXT*> >::pop(IO_CONTEXT*&) 0.34 25.17 0.09 4118577 0.00 0.00 cond_queue<mlist<IO_CONTEXT*> >::push(IO_CONTEXT*) 0.34 25.26 0.09 1 0.09 0.59 EventTrigger::mainLoop() 0.30 25.34 0.08 2021122 0.00 0.00 cond_queue<mlist<IO_CONTEXT*> >::pop_timeout(IO_CONTEXT*&, timespec*) 0.26 25.41 0.07 2073967 0.00 0.00 ksocket::put(char const*, unsigned int) 0.26 25.48 0.07 678464 0.00 0.00 IOHandler::setReadable(unactive_mgr*, IOCP*) 0.26 25.55 0.07 373927 0.00 0.00 lockable_queue<std::list<IO_CONTEXT*, std::allocator<IO_CONTEXT*> > >::pop(IO_CONTEXT*&) 0.26 25.62 0.07 186138 0.00 0.00 std::list<IO_CONTEXT*, std::allocator<IO_CONTEXT*> >::pop_front() 0.25 25.68 0.07 2078618 0.00 0.00 Recv(int, IO_CONTEXT*) 0.21 25.74 0.06 998 0.00 0.00 MemPool<l_node<IO_CONTEXT*>, 64>::push_back(l_node<IO_CONTEXT*>*) 0.21 25.79 0.06 119 0.00 0.00 std::list<int, std::allocator<int> >::empty() const 0.17 25.84 0.05 124 0.00 0.00 ksocket::~ksocket() 0.15 25.88 0.04 2082362 0.00 0.00 cirbuf<40960u>::getwsize() const 0.15 25.92 0.04 374948 0.00 0.00 std::list<IO_CONTEXT*, std::allocator<IO_CONTEXT*> >::empty() const 0.15 25.96 0.04 ksocket::send(char*, unsigned int) 0.15 26.00 0.04 IOHandler::sendIO(cond_queue<mlist<IO_CONTEXT*> >*, unactive_mgr*, IO_CONTEXT*) 0.13 26.03 0.04 993361 0.00 0.00 Cond::signal() 0.11 26.06 0.03 2069913 0.00 0.00 ksocket::setCanRecv() 0.11 26.09 0.03 357818 0.00 0.00 Cond::wait(Lock&) 0.11 26.12 0.03 187660 0.00 0.00 std::_List_base<IO_CONTEXT*, std::allocator<IO_CONTEXT*> >::_M_put_node(std::_List_node<IO_CONTEXT*>*) 0.09 26.15 0.03 119 0.00 0.00 AttachIocp(int, int) 0.09 26.17 0.03 119 0.00 0.00 fixObjPool_lockbase<IOHandler>::Alloc() 0.09 26.20 0.03 Send(int, IO_CONTEXT*) 0.08 26.22 0.02 2005986 0.00 0.00 IOHandler::readRc() 0.08 26.24 0.02 1088 0.00 0.00 l_node<IO_CONTEXT*>::l_node() 0.08 26.26 0.02 1029 0.00 0.00 MemPool<l_node<IO_CONTEXT*>, 64>::pop_front() 0.08 26.28 0.02 119 0.00 0.00 IOCP::AttachIocp(int) 0.08 26.30 0.02 __tcf_0 0.06 26.31 0.02 2 0.01 0.01 std::_List_base<Thread*, std::allocator<Thread*> >::_M_init() 0.06 26.33 0.02 187271 0.00 0.00 std::list<IO_CONTEXT*, std::allocator<IO_CONTEXT*> >::_M_erase(std::_List_iterator<IO_CONTEXT*>) 0.04 26.34 0.01 451046 0.00 0.00 Cond::timedwait(Lock&, timespec const*) 0.04 26.35 0.01 303730 0.00 0.00 mlist<fdop>::empty() 0.04 26.36 0.01 188905 0.00 0.00 operator new(unsigned int, void*) 0.04 26.37 0.01 187156 0.00 0.00 unactive_mgr::pop_read_una(int, IOCP*) 0.04 26.38 0.01 186995 0.00 0.00 __gnu_cxx::new_allocator<std::_List_node<IO_CONTEXT*> >::deallocate(std::_List_node<IO_CONTEXT*>*, unsigned int) 0.04 26.39 0.01 180261 0.00 0.00 IOHandler::clearReadable(cond_queue<mlist<IO_CONTEXT*> >*, long, unactive_mgr*, IO_CONTEXT*) 0.04 26.40 0.01 179681 0.00 0.00 std::list<IO_CONTEXT*, std::allocator<IO_CONTEXT*> >::end() 0.04 26.41 0.01 179016 0.00 0.00 unactive_mgr::push_read_una(int, IO_CONTEXT*) 0.04 26.42 0.01 242 0.00 0.00 fdop::fdop(optype, int) 0.04 26.43 0.01 1 0.01 0.01 noncopyable::~noncopyable() 0.04 26.44 0.01 1 0.01 0.01 std::list<int, std::allocator<int> >::~list() 0.04 26.45 0.01 ksocket::setCanSend() 0.02 26.45 0.01 370157 0.00 0.00 std::allocator<IO_CONTEXT*>::allocator<std::_List_node<IO_CONTEXT*> >(std::allocator<std::_List_node<IO_CONTEXT*> > const&) 0.02 26.46 0.01 367049 0.00 0.00 std::_List_base<IO_CONTEXT*, std::allocator<IO_CONTEXT*> >::_M_get_Tp_allocator() const 0.02 26.46 0.01 187448 0.00 0.00 __gnu_cxx::new_allocator<IO_CONTEXT*>::destroy(IO_CONTEXT**) 0.02 26.47 0.01 179349 0.00 0.00 std::list<IO_CONTEXT*, std::allocator<IO_CONTEXT*> >::push_back(IO_CONTEXT* const&) 0.02 26.47 0.01 std::_List_base<IO_CONTEXT*, std::allocator<IO_CONTEXT*> >::_List_impl::~_List_impl() 0.00 26.47 0.00 688326 0.00 0.00 IOHandler::setWriteable(unactive_mgr*, IOCP*) 0.00 26.47 0.00 555325 0.00 0.00 std::_List_iterator<IO_CONTEXT*>::_List_iterator(std::_List_node_base*) 0.00 26.47 0.00 378192 0.00 0.00 std::allocator<IO_CONTEXT*>::~allocator() 0.00 26.47 0.00 376870 0.00 0.00 __gnu_cxx::new_allocator<IO_CONTEXT*>::new_allocator() 0.00 26.47 0.00 375197 0.00 0.00 __gnu_cxx::new_allocator<IO_CONTEXT*>::~new_allocator() 0.00 26.47 0.00 374753 0.00 0.00 std::list<IO_CONTEXT*, std::allocator<IO_CONTEXT*> >::begin() 0.00 26.47 0.00 262144 0.00 0.00 fdop::fdop() 0.00 26.47 0.00 186877 0.00 0.00 std::_List_iterator<IO_CONTEXT*>::operator*() const 0.00 26.47 0.00 186717 0.00 0.00 std::list<IO_CONTEXT*, std::allocator<IO_CONTEXT*> >::front() 0.00 26.47 0.00 180567 0.00 0.00 __gnu_cxx::new_allocator<std::_List_node<IO_CONTEXT*> >::allocate(unsigned int, void const*) 0.00 26.47 0.00 179853 0.00 0.00 std::list<IO_CONTEXT*, std::allocator<IO_CONTEXT*> >::_M_insert(std::_List_iterator<IO_CONTEXT*>, IO_CONTEXT* const&) 0.00 26.47 0.00 179808 0.00 0.00 __gnu_cxx::new_allocator<IO_CONTEXT*>::construct(IO_CONTEXT**, IO_CONTEXT* const&) 0.00 26.47 0.00 179735 0.00 0.00 std::list<IO_CONTEXT*, std::allocator<IO_CONTEXT*> >::_M_create_node(IO_CONTEXT* const&) 0.00 26.47 0.00 179731 0.00 0.00 std::_List_base<IO_CONTEXT*, std::allocator<IO_CONTEXT*> >::_M_get_node() 0.00 26.47 0.00 178792 0.00 0.00 __gnu_cxx::new_allocator<std::_List_node<IO_CONTEXT*> >::max_size() const 0.00 26.47 0.00 178457 0.00 0.00 lockable_queue<std::list<IO_CONTEXT*, std::allocator<IO_CONTEXT*> > >::push(IO_CONTEXT*) 0.00 26.47 0.00 10610 0.00 0.00 Lock::Lock() 0.00 26.47 0.00 8192 0.00 0.00 lockable_queue<std::list<IO_CONTEXT*, std::allocator<IO_CONTEXT*> > >::lockable_queue() 0.00 26.47 0.00 8192 0.00 0.00 __gnu_cxx::new_allocator<std::_List_node<IO_CONTEXT*> >::new_allocator(__gnu_cxx::new_allocator<std::_List_node<IO_CONTEXT*> > const&) 0.00 26.47 0.00 8192 0.00 0.00 __gnu_cxx::new_allocator<std::_List_node<IO_CONTEXT*> >::new_allocator() 0.00 26.47 0.00 8192 0.00 0.00 __gnu_cxx::new_allocator<std::_List_node<IO_CONTEXT*> >::~new_allocator() 0.00 26.47 0.00 8192 0.00 0.00 std::allocator<IO_CONTEXT*>::allocator() 0.00 26.47 0.00 8192 0.00 0.00 std::allocator<std::_List_node<IO_CONTEXT*> >::allocator<IO_CONTEXT*>(std::allocator<IO_CONTEXT*> const&) 0.00 26.47 0.00 8192 0.00 0.00 std::allocator<std::_List_node<IO_CONTEXT*> >::allocator(std::allocator<std::_List_node<IO_CONTEXT*> > const&) 0.00 26.47 0.00 8192 0.00 0.00 std::allocator<std::_List_node<IO_CONTEXT*> >::~allocator() 0.00 26.47 0.00 8192 0.00 0.00 std::_List_base<IO_CONTEXT*, std::allocator<IO_CONTEXT*> >::_List_impl::_List_impl(std::allocator<std::_List_node<IO_CONTEXT*> > const&) 0.00 26.47 0.00 8192 0.00 0.00 std::_List_base<IO_CONTEXT*, std::allocator<IO_CONTEXT*> >::_M_init() 0.00 26.47 0.00 8192 0.00 0.00 std::_List_base<IO_CONTEXT*, std::allocator<IO_CONTEXT*> >::_List_base(std::allocator<IO_CONTEXT*> const&) 0.00 26.47 0.00 8192 0.00 0.00 std::list<IO_CONTEXT*, std::allocator<IO_CONTEXT*> >::list(std::allocator<IO_CONTEXT*> const&) 0.00 26.47 0.00 8189 0.00 0.00 std::allocator<int>::~allocator() 0.00 26.47 0.00 8188 0.00 0.00 std::_List_base<int, std::allocator<int> >::_M_get_Tp_allocator() const 0.00 26.47 0.00 8187 0.00 0.00 __gnu_cxx::new_allocator<int>::new_allocator() 0.00 26.47 0.00 8187 0.00 0.00 std::allocator<int>::allocator<std::_List_node<int> >(std::allocator<std::_List_node<int> > const&) 0.00 26.47 0.00 8186 0.00 0.00 __gnu_cxx::new_allocator<int>::~new_allocator() 0.00 26.47 0.00 4335 0.00 0.00 std::_List_iterator<int>::_List_iterator(std::_List_node_base*) 0.00 26.47 0.00 4283 0.00 0.00 std::allocator<l_node<IO_CONTEXT*>*>::~allocator() 0.00 26.47 0.00 4279 0.00 0.00 __gnu_cxx::new_allocator<l_node<IO_CONTEXT*>*>::new_allocator() 0.00 26.47 0.00 4274 0.00 0.00 __gnu_cxx::new_allocator<l_node<IO_CONTEXT*>*>::~new_allocator() 0.00 26.47 0.00 4241 0.00 0.00 std::allocator<l_node<IO_CONTEXT*>*>::allocator<std::_List_node<l_node<IO_CONTEXT*>*> >(std::allocator<std::_List_node<l_node<IO_CONTEXT*>*> > const&) 0.00 26.47 0.00 4217 0.00 0.00 std::_List_base<l_node<IO_CONTEXT*>*, std::allocator<l_node<IO_CONTEXT*>*> >::_M_get_Tp_allocator() const 0.00 26.47 0.00 4134 0.00 0.00 std::_List_iterator<l_node<IO_CONTEXT*>*>::_List_iterator(std::_List_node_base*) 0.00 26.47 0.00 4096 0.00 0.00 unactive_mgr::ele::ele() 0.00 26.47 0.00 4096 0.00 0.00 __gnu_cxx::new_allocator<std::_List_node<int> >::allocate(unsigned int, void const*) 0.00 26.47 0.00 4096 0.00 0.00 __gnu_cxx::new_allocator<int>::construct(int*, int const&) 0.00 26.47 0.00 4096 0.00 0.00 __gnu_cxx::new_allocator<std::_List_node<int> >::max_size() const 0.00 26.47 0.00 4096 0.00 0.00 std::_List_base<int, std::allocator<int> >::_M_get_node() 0.00 26.47 0.00 4096 0.00 0.00 std::list<int, std::allocator<int> >::_M_create_node(int const&) 0.00 26.47 0.00 4096 0.00 0.00 std::list<int, std::allocator<int> >::end() 0.00 26.47 0.00 4096 0.00 0.00 std::list<int, std::allocator<int> >::_M_insert(std::_List_iterator<int>, int const&) 0.00 26.47 0.00 4096 0.00 0.00 std::list<int, std::allocator<int> >::push_back(int const&) 0.00 26.47 0.00 4092 0.00 0.00 std::_List_base<int, std::allocator<int> >::_M_put_node(std::_List_node<int>*) 0.00 26.47 0.00 4091 0.00 0.00 __gnu_cxx::new_allocator<std::_List_node<int> >::deallocate(std::_List_node<int>*, unsigned int) 0.00 26.47 0.00 4091 0.00 0.00 __gnu_cxx::new_allocator<int>::destroy(int*) 0.00 26.47 0.00 2294 0.00 0.00 __gnu_cxx::new_allocator<IOHandler*>::~new_allocator() 0.00 26.47 0.00 2293 0.00 0.00 __gnu_cxx::new_allocator<IOHandler*>::new_allocator()
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -