/**
* Submits a asynchronous task to the Pool
* If the AsyncTask sets a result, you have to get it so it can be deleted
*
* @param AsyncTask $task
*
* @return void
*/
public function scheduleAsyncTask(AsyncTask $task)
{
$id = $this->nextId();
$task->setTaskId($id);
$this->asyncPool->submit($task);
$this->asyncTaskStorage[$id] = $task;
++$this->asyncTasks;
}