Ok, I think I got it!
You have to define the BOOST_ASIO_ENABLE_HANDLER_TRACKING in every module that uses Boost. I was only defining in one and that may be the reason why io_service was returning (or crashing, don't know).
What I know is that I defined BOOST_ASIO_ENABLE_HANDLER_TRACKING in all my modules and now I have tracking are proper program execution.

Hope it helps!

On Wednesday, 22 January 2014 14:07:45 UTC, Carlos Ferreira wrote:
I have the same problem when defining  BOOST_ASIO_ENABLE_HANDLER_TRACKING.
My io_services are simply returning. like if there was no event to process.
When I remove the define, it runs well.

On Thursday, 3 January 2013 21:12:40 UTC, Gonzalo Garramuno wrote:
On 01/01/13 22:13, Gonzalo Garramuno wrote:
> Trying to track down when the socket closes on my program, I turned on
> asio debugging.
>
> Server fails when BOOST_ASIO_ENABLE_HANDLER_TRACKING is active.
>

I spoke too early.  I removed all debugging code from asio and it does
not crash anymore.  Attached are the new logs, which show nothing in
particular.  Maybe someone can see something missing.