Heya :) On Wed 08 Jun 2011 23:05, l...@gnu.org (Ludovic Courtès) writes:
> "Andy Wingo" <wi...@pobox.com> skribis: > >> "Return a new future for THUNK. Execution may start at any point >> concurrently, or it can start at the time when the returned future is >> touched." >> + (create-workers!) > > Wouldn't it be more efficient to instead do: > > (if (null? %workers) > (%create-workers!)) > > Once the workers are created, that would leave 0 function calls. Possibly, but isn't there a race condition if you do that though? Consider two calls to make-future from different threads, before the workers set has been spawned. Andy -- http://wingolog.org/