while (1) { if ($task_1_ready) { do_task_1(...); } elsif ($task_2_ready) { do_task_2(...); } else { sleep($doze_time); } }