public function setGarbage()
{
$this->isGarbage = true;
}
private function removeTask(AsyncTask $task, $force = false) { $task->setGarbage(); if (isset($this->taskWorkers[$task->getTaskId()])) { if (!$force and ($task->isRunning() or !$task->isGarbage())) { return; } $this->workerUsage[$this->taskWorkers[$task->getTaskId()]]--; } unset($this->tasks[$task->getTaskId()]); unset($this->taskWorkers[$task->getTaskId()]); $task->cleanObject(); }