[Turn on line numbering]
var task, sub, t;
// called by $sys.heartbeat
if (caller() != $sys)
throw(~perm, "Sender is not system");
t = time();
while (task_queue && t > task_queue[1][2]) {
task = task_queue[1];
.remove_first_task();
catch any
(> task[4].as_this_run(task[4], task[6], task[8]) <);
with
(| task[4].manager().tell_traceback(traceback()) |);
}
// call sub schedulers
for sub in (sub_schedulers)
(| sub.pulse() |);
// $#Edited: 30 Apr 97 17:50 $scheduler
// $#Edited: 08 Jan 98 21:24 $brian
["// Miroslav Silovic ", "// Created 05-Sep-1995 as a part of ColdCore, see: @help Credit"]