equal
deleted
inserted
replaced
59 val fulfill: 'a future -> 'a -> unit |
59 val fulfill: 'a future -> 'a -> unit |
60 val interruptible_task: ('a -> 'b) -> 'a -> 'b |
60 val interruptible_task: ('a -> 'b) -> 'a -> 'b |
61 val cancel_group: group -> unit |
61 val cancel_group: group -> unit |
62 val cancel: 'a future -> unit |
62 val cancel: 'a future -> unit |
63 val shutdown: unit -> unit |
63 val shutdown: unit -> unit |
64 val report: (unit -> 'a) -> 'a |
64 val status: (unit -> 'a) -> 'a |
65 end; |
65 end; |
66 |
66 |
67 structure Future: FUTURE = |
67 structure Future: FUTURE = |
68 struct |
68 struct |
69 |
69 |
530 while scheduler_active () do |
530 while scheduler_active () do |
531 (wait scheduler_event; broadcast_work ())) |
531 (wait scheduler_event; broadcast_work ())) |
532 else (); |
532 else (); |
533 |
533 |
534 |
534 |
535 (* report markup *) |
535 (* status markup *) |
536 |
536 |
537 fun report e = |
537 fun status e = |
538 let |
538 let |
539 val _ = Output.status (Markup.markup Markup.forked ""); |
539 val _ = Output.status (Markup.markup Markup.forked ""); |
540 val x = e (); (*sic -- report "joined" only for success*) |
540 val x = e (); (*sic -- report "joined" only for success*) |
541 val _ = Output.status (Markup.markup Markup.joined ""); |
541 val _ = Output.status (Markup.markup Markup.joined ""); |
542 in x end; |
542 in x end; |