Пример #1
0
 io_service_pool::~io_service_pool()
 {
     boost::mutex::scoped_lock l(mtx_);
     stop_locked();
     join_locked();
     clear_locked();
 }
Пример #2
0
 io_service_pool::~io_service_pool()
 {
     boost::lock_guard<boost::mutex> l(mtx_);
     stop_locked();
     join_locked();
     clear_locked();
 }
Пример #3
0
 io_service_pool::~io_service_pool()
 {
     std::lock_guard<compat::mutex> l(mtx_);
     stop_locked();
     join_locked();
     clear_locked();
 }
Пример #4
0
 thread_pool<Scheduler>::~thread_pool()
 {
     if (!threads_.empty()) {
         if (!sched_.has_reached_state(state_suspended))
         {
             // still running
             lcos::local::no_mutex mtx;
             boost::unique_lock<lcos::local::no_mutex> l(mtx);
             stop_locked(l);
         }
         threads_.clear();
     }
 }
Пример #5
0
    void pool_timer::terminate()
    {
        std::unique_lock<mutex_type> l(mtx_);
        if (!is_terminated_) {
            is_terminated_ = true;
            stop_locked();

            if (on_term_) {
                l.unlock();
                on_term_();
            }
        }
        delete timer_;
        timer_ = nullptr;
    }
Пример #6
0
 void io_service_pool::stop()
 {
     boost::lock_guard<boost::mutex> l(mtx_);
     stop_locked();
 }
Пример #7
0
 bool pool_timer::stop()
 {
     std::lock_guard<mutex_type> l(mtx_);
     return stop_locked();
 }
Пример #8
0
 void io_service_pool::stop()
 {
     boost::mutex::scoped_lock l(mtx_);
     stop_locked();
 }
Пример #9
0
 void io_service_pool::stop()
 {
     std::lock_guard<compat::mutex> l(mtx_);
     stop_locked();
 }