Boost logo

Boost Users :

From: Andrea Bartoli (bartols2000_at_[hidden])
Date: 2007-12-05 04:05:12


Yes, timeout and read event have two different callback, in read callback you have to m_timer->cancel() to avoid receive timeout also. ----- Messaggio originale ----- Da: Arkadiy Vertleyb <vertleyb_at_[hidden]> A: boost-users_at_[hidden] Inviato: Martedì 4 dicembre 2007, 16:14:40 Oggetto: Re: [Boost-users] [asio] how to specify a timeout? Hello Andrea, "Andrea Bartoli" <bartols2000_at_[hidden]> wrote > Use an asio::deadline_timer > > Example: > > asio::io_service m_ioService; > asio::deadline_timer * m_timer; > m_timer = new asio::deadline_timer(m_ioService); > > m_timer->expires_from_now( boost::posix_time::seconds(t) ); > m_timer->async_wait( boost::bind(&Foo:handle_timeout, this, > asio::placeholders::error) ); > asio::async_read( *m_socket, > asio::buffer( m_msg.header(), > m_msg.header_length() ), > boost::bind(&Foo::handle_read_header, > this, asio::placeholders::error) ); Thanks for your response. Still, it's not clear to me how to use it. In your example it seems that read operation and timeout are two independent things. How do I make sure only one of these two fires? Is it possile to cancel read operation once timout has been recieved? Thanks, Arkadiy _______________________________________________ Boost-users mailing list Boost-users_at_[hidden] http://lists.boost.org/mailman/listinfo.cgi/boost-users ___________________________________ L'email della prossima generazione? Puoi averla con la nuova Yahoo! Mail: http://it.docs.yahoo.com/nowyoucan.html


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net