src/Pure/Concurrent/single_assignment.ML
changeset 64276 622f4e4ac388
parent 62923 3a122e1e352a
child 67009 b68592732783
equal deleted inserted replaced
64275:ac2abc987cf9 64276:622f4e4ac388
    35   Multithreading.synchronized name lock (fn () =>
    35   Multithreading.synchronized name lock (fn () =>
    36     let
    36     let
    37       fun wait () =
    37       fun wait () =
    38         (case peek v of
    38         (case peek v of
    39           NONE =>
    39           NONE =>
    40             (case Multithreading.sync_wait NONE NONE cond lock of
    40             (case Multithreading.sync_wait NONE cond lock of
    41               Exn.Res _ => wait ()
    41               Exn.Res _ => wait ()
    42             | Exn.Exn exn => Exn.reraise exn)
    42             | Exn.Exn exn => Exn.reraise exn)
    43         | SOME x => x);
    43         | SOME x => x);
    44     in wait () end);
    44     in wait () end);
    45 
    45