Due to my geek attitude, I want to come up with a complete picture of how scheduling works in Max. I have one concept in mind and I'd like to know what do you guys think about it.
So, my guess is that internally the scheduler is implemented alike Java's priority queue
, and when you want to do something, you basically add a task and a time, when it should be executed, to the queue. All tasks in this queue are ordered according to execution time, and the scheduler just pops the tasks from the top of the queue and checks, whether it is time to execute the task or not. If it is, the task is executed, if not—the scheduler does nothing until the next notification (controlled by “Scheduler Interval” setting).
So, is it far from the reality? :)