Boost logo

Boost Users :

Subject: Re: [Boost-users] [asio] io_service::run() never returns and is blocking my thread
From: Robert Dailey (rcdailey_at_[hidden])
Date: 2009-08-27 17:05:29


I see. I was waiting for the thread to end before I closed the serial
port, I just assumed it would be unsafe to do otherwise. Thanks for
the info!

On Thursday, August 27, 2009, Scott Gifford <sgifford_at_[hidden]> wrote:
> Robert Dailey <rcdailey_at_[hidden]> writes:
>
>> I'm currently using a serial_port object to call async_read_some().
>> This results in io_service::run() blocking until at least 1 byte or
>> more can be read from the serial port. If nothing is ever sent, then I
>> can not safely exit the thread in which io_service::run() is executing
>> in.
>
> [...]
>
> I haven't used the serial_port object, but for a network socket, you
> can just close the network socket from another thread, and your
> completion handler will run with an appropriate error.
>
> Hope this helps,
>
> -----Scott.
> _______________________________________________
> Boost-users mailing list
> Boost-users_at_[hidden]
> http://lists.boost.org/mailman/listinfo.cgi/boost-users
>

-- 
---------
Robert Dailey

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