/** * Returns the next operation that must be ran * @return mm\Daemon\Operation */ public function next() { // maintain count of how many operations of each type are currently running // depending on the priority (#1 = downloads, #2 = merge), return the next operation // when an operation finishes, the slot is cleaned up, and one more of the same type can resume return Queue::getNextItem(); }