Thank you Oliver for the suggestion.  I will have a look.  I think you are correct--and this was my feeling as well--that the context functionality is perfect for what I want to do.  I just have to get where I understand it.
 
Question: If I allocate too small of a stack, and something gets written outside of the allocation, is there any way to know that this has occurred?
 
Thanks,
Greg Laird
 
----- Original Message -----
From: Oliver Kowalke
To: boost-users
Sent: Wednesday, January 18, 2017 5:54 AM
Subject: Re: [Boost-users] Fwd: Boost coroutine/context libraries

2017-01-18 2:20 GMT+01:00 Gregory Laird <glaird@northgatebowl.com>:
--------------- Forwarded message (begin)

Subject: Boost coroutine/context libraries
From: Gregory Laird <glaird@northgatebowl.com>
Date: Tue, 17 Jan 2017 17:10:57 -0800
Newsgroup: gmane.comp.lib.boost.user

I am trying to write a cooperative task scheduler in c++ and I have
discovered the boost context and coroutine libraries.  I have written these
sorts of schedulers many times in assembly language so I appreciate the
issues in the methodology.  I have written lots of c code but am less versed
in c++.

I have been trying to find some straightforward examples of the libraries
use without a lot of extraneous c++ language elements (e.g. binds, lambdas,
etc.).  I did find one example

http://stackoverflow.com/questions/11716291/boost-context-class

that is very nice, but it will not compile now with the current boost
library.  I get an error saying that boost::context::fcontext_t has been
removed from the public api.

Could someone direct me to some examples that demonstrate the context or
coroutine functionality that would be easier to understand.

I want to write a scheduler that is very similar to the example listed above
where coroutines yeild back to a main caller which then chooses the next
coroutine to continue its processing.

- I would use boost.context instead of boost.coroutine(2) for implementing a scheduler
- boost.context contains an directory ('example') which does contains not too complicated C++ code


_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users