示例#1
0
 void destroy(
     implementation_type & impl)
 {
     error_code ec;
     cancel(impl, ec);
     impl.reset();
 }
示例#2
0
    void destroy(implementation_type &impl)
    {
        boost::unique_lock<boost::mutex> lock(work_thread_mutex_);
        typename std::vector<implementation_type>::iterator it =
            std::find(impls_.begin(), impls_.end(), impl);
        if (it != impls_.end())
            impls_.erase(it);
#if defined(BOOST_WINDOWS_API)
        interrupt_work_thread();
        work_thread_cond_.wait(work_thread_mutex_);
        impl->clear(handles_);
        work_thread_cond_.notify_all();
#endif
        impl.reset();
    }
 void
 destroy ( implementation_type &impl )
 {
   impl->destroy();
   impl.reset();
 }
 void
 construct ( implementation_type &impl )
 {
   impl.reset(new DnsResolverImplementation(this->get_io_service()));
 }
示例#5
0
 void construct(
     implementation_type & impl)
 {
     impl.reset(new ResolveTask);
 }