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/

Reply via email to