ServerScheduler::scheduleAsyncTask() returns the worker used (#1312)

This commit is contained in:
SOFe
2017-08-29 17:29:24 +08:00
committed by Dylan K. Taylor
parent 7475aa3a18
commit 9902d29734
2 changed files with 7 additions and 5 deletions

View File

@ -24,6 +24,7 @@ declare(strict_types=1);
/**
* Task scheduling related classes
*/
namespace pocketmine\scheduler;
use pocketmine\plugin\Plugin;
@ -75,16 +76,16 @@ class ServerScheduler{
*
* @param AsyncTask $task
*
* @return void
* @return int
*/
public function scheduleAsyncTask(AsyncTask $task){
public function scheduleAsyncTask(AsyncTask $task) : int{
if($task->getTaskId() !== null){
throw new \UnexpectedValueException("Attempt to schedule the same AsyncTask instance twice");
}
$id = $this->nextId();
$task->setTaskId($id);
$task->progressUpdates = new \Threaded;
$this->asyncPool->submitTask($task);
return $this->asyncPool->submitTask($task);
}
/**