
your options are ... 2) use a Boost.Context-based solution as I mentioned before.
Boost.Coroutine? Is that in boost vault?
Heh. There is a Boost.Coroutine in the Vault, but you're better advised to use the new Boost.Coroutine just coming up for review this week (I believe).
IMO, either would be better than directly using Boost.Context. Context is a low-level library intended for use by application-level libraries such as Coroutine. It's just that any application-level library based on user-space context switching necessarily deals with the same platform-dependent issues; Oliver Kowalke has very usefully abstracted those out as Context.
Now Oliver has presented us with a reimplementation of the original Boost.Coroutine prototype (in the Vault), based on his Context library. If you're willing, it would be very timely to add your opinion to the review about to be announced.
You're right, I was thinking of an earlier version of Boost.Context that had a high-level interface with an object of type 'context' which could be suspended/resumed etc. It seems this interface is not included in the Boost.Context that's currently in trunk and instead the functionality was moved to Boost.Coroutine? I totally missed that... Regards, Nate