text: Subject: Re: [boost] new library boost.fiber in vault
  From: Vicente Botet Escriba (vicente.botet_at_[hidden])
  Date: 2009-11-21 08:39:58
  Oliver Kowalke-2 wrote:
  >
  > I've re factored boost.fiber (-> boost vault
  >).
  >
  >
  > The library provides a so called lightweight thread of execution (also
  > known as user-space thread or fiber on WIN32).
  > The API is modeled after boost.thread.
  >
  > Beside a scheduler (currently simple round-robin) for the fibers the
  > library provides sync. primitives like mutex, condition- and
  > event-variables (auto-reset, manual-reset, count-down). Message can be
  > passed between fibers via bounded-/unbounded-fifo.
  >
  > Some feedback would be nice.
  >
  >
  Just a remarks related to name space. Your namespace approach is mixed. From
  one side you have boost::this_fiber namespace and boost::fiber class and the
  namespace boost::fibers. IMO you should either put all on boost or on
  boost::fibers but not both.
  Instead of
  boost::fiber f1=boost::fibers::make_fiber( some_fn);
  I would prefer
  boost::fiber f1=boost::make_fiber( some_fn);
  I have also some questions related to the scheduler. How many schedulers can
  be run on a thread? Do you have a use case of any interest to be able to run
  more than one?
  Could you talk about the need to migrate fibers from one thread to another?