pocketmine\scheduler\AsyncTask::cleanObject PHP Method

cleanObject() public method

public cleanObject ( )
    public function cleanObject()
    {
        foreach ($this as $p => $v) {
            if (!$v instanceof \Threaded and !in_array($p, ["isFinished", "isGarbage", "cancelRun"])) {
                $this->{$p} = null;
            }
        }
    }

Usage Example

Example #1
0
 private function removeTask(AsyncTask $task, $force = false)
 {
     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();
 }