Skip to content

Commit

Permalink
Use class instead of static variables for the speed measurement (#168)
Browse files Browse the repository at this point in the history
  • Loading branch information
pfefferle authored Nov 16, 2023
1 parent b2c601b commit 8ffd0cf
Showing 1 changed file with 10 additions and 9 deletions.
19 changes: 10 additions & 9 deletions lib/cli/Notify.php
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,9 @@ abstract class Notify {
protected $_message;
protected $_start;
protected $_timer;
protected $_tick;
protected $_iteration = 0;
protected $_speed = 0;

/**
* Instatiates a Notification object.
Expand Down Expand Up @@ -92,23 +95,21 @@ public function elapsed() {
* @return int The number of ticks performed in 1 second.
*/
public function speed() {
static $tick, $iteration = 0, $speed = 0;

if (!$this->_start) {
return 0;
} else if (!$tick) {
$tick = $this->_start;
} else if (!$this->_tick) {
$this->_tick = $this->_start;
}

$now = microtime(true);
$span = $now - $tick;
$span = $now - $this->_tick;
if ($span > 1) {
$iteration++;
$tick = $now;
$speed = ($this->_current / $iteration) / $span;
$this->_iteration++;
$this->_tick = $now;
$this->_speed = ($this->_current / $this->_iteration) / $span;
}

return $speed;
return $this->_speed;
}

/**
Expand Down

0 comments on commit 8ffd0cf

Please sign in to comment.