Boost logo

Boost Users :

Subject: Re: [Boost-users] [ASIO] Where to use CoInitizeEx
From: Daniele Barzotti (daniele.barzotti_at_[hidden])
Date: 2009-06-03 09:57:11


Ovanes Markarian ha scritto:
>
> void io_worker_thread(void)
> {
> #if (WIN32)
> CoInitializeEx(NULL, COINIT_APARTMENTTHREADED);
> #endif
>
> io_service.run();
>
> #if (WIN32)
> CoUninitialize();
> #endif
> };
>
>
> It is better to use at least RAII here. This approach is not exception
> safe and if io_service.run() throws an exception CoUnintialize() will
> not be called.

You're right!
But how can I adapt this code to use RAII?
Maybe is more simple to add a try-catch statement?

Daniele.


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