equal
deleted
inserted
replaced
239 fun execute document = |
239 fun execute document = |
240 NAMED_CRITICAL "Isar" (fn () => |
240 NAMED_CRITICAL "Isar" (fn () => |
241 let |
241 let |
242 val old_execution = ! execution; |
242 val old_execution = ! execution; |
243 val _ = Future.cancel old_execution; |
243 val _ = Future.cancel old_execution; |
244 val new_execution = Future.fork (fn () => |
244 val new_execution = Future.fork_pri 1 (fn () => |
245 (uninterruptible (K Future.join_result) old_execution; |
245 (uninterruptible (K Future.join_result) old_execution; |
246 fold_entries no_id (fn (_, {state, ...}) => fn () => force_state state) document ())); |
246 fold_entries no_id (fn (_, {state, ...}) => fn () => force_state state) document ())); |
247 in execution := new_execution end); |
247 in execution := new_execution end); |
248 |
248 |
249 in |
249 in |