New method getMemoryUsage to get RAM information message
This commit is contained in:
parent
0ae84d56c7
commit
48b785e876
|
@ -54,14 +54,11 @@ abstract class AbstractProvider extends BaseAbstractProvider
|
|||
usleep($sleep);
|
||||
|
||||
if ($loggerClosure) {
|
||||
$memory = round(memory_get_usage() / (1024*1024),0); // to get usage in Mo
|
||||
$memoryMax = round(memory_get_peak_usage() / (1024*1024)); // to get max usage in Mo
|
||||
$message = '(RAM : current='.$memory.'Mo peak='.$memoryMax.'Mo)';
|
||||
$stepNbObjects = count($objects);
|
||||
$stepCount = $stepNbObjects + $offset;
|
||||
$percentComplete = 100 * $stepCount / $nbObjects;
|
||||
$objectsPerSecond = $stepNbObjects / (microtime(true) - $stepStartTime);
|
||||
$loggerClosure(sprintf('%0.1f%% (%d/%d), %d objects/s %s', $percentComplete, $stepCount, $nbObjects, $objectsPerSecond, $message));
|
||||
$loggerClosure(sprintf('%0.1f%% (%d/%d), %d objects/s %s', $percentComplete, $stepCount, $nbObjects, $objectsPerSecond, $this->getMemoryUsage()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -37,14 +37,11 @@ class Provider extends AbstractProvider
|
|||
usleep($sleep);
|
||||
|
||||
if ($loggerClosure) {
|
||||
$memory = round(memory_get_usage() / (1024*1024),0); // to get usage in Mo
|
||||
$memoryMax = round(memory_get_peak_usage() / (1024*1024)); // to get usage in Mo
|
||||
$message = '(RAM : current='.$memory.'Mo peak='.$memoryMax.'Mo)';
|
||||
$stepNbObjects = count($objects);
|
||||
$stepCount = $stepNbObjects + $offset;
|
||||
$percentComplete = 100 * $stepCount / $nbObjects;
|
||||
$objectsPerSecond = $stepNbObjects / (microtime(true) - $stepStartTime);
|
||||
$loggerClosure(sprintf('%0.1f%% (%d/%d), %d objects/s %s', $percentComplete, $stepCount, $nbObjects, $objectsPerSecond, $message));
|
||||
$loggerClosure(sprintf('%0.1f%% (%d/%d), %d objects/s %s', $percentComplete, $stepCount, $nbObjects, $objectsPerSecond, $this->getMemoryUsage()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -26,4 +26,16 @@ abstract class AbstractProvider implements ProviderInterface
|
|||
'batch_size' => 100,
|
||||
), $options);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get string with RAM usage information (current and peak)
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
protected function getMemoryUsage() {
|
||||
$memory = round(memory_get_usage() / (1024*1024),0); // to get usage in Mo
|
||||
$memoryMax = round(memory_get_peak_usage() / (1024*1024)); // to get max usage in Mo
|
||||
$message = '(RAM : current='.$memory.'Mo peak='.$memoryMax.'Mo)';
|
||||
return $message;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue