Added memory limits for AsyncWorkers

This commit is contained in:
Dylan K. Taylor
2017-08-20 12:15:48 +01:00
parent 8475c63426
commit 17053389b0
4 changed files with 37 additions and 17 deletions

View File

@ -31,17 +31,27 @@ class AsyncWorker extends Worker{
private $logger;
private $id;
public function __construct(MainLogger $logger, int $id){
/** @var int */
private $memoryLimit;
public function __construct(MainLogger $logger, int $id, int $memoryLimit){
$this->logger = $logger;
$this->id = $id;
$this->memoryLimit = $memoryLimit;
}
public function run(){
$this->registerClassLoader();
$this->logger->registerStatic();
gc_enable();
ini_set("memory_limit", '-1');
if($this->memoryLimit > 0){
ini_set('memory_limit', $this->memoryLimit . 'M');
$this->logger->debug("Set memory limit to " . $this->memoryLimit . " MB");
}else{
ini_set('memory_limit', '-1');
$this->logger->debug("No memory limit set");
}
global $store;
$store = [];