PhpBench\Benchmark\Executor\DebugExecutor::execute PHP Method

execute() public method

public execute ( SubjectMetadata $subjectMetadata, Iteration $iteration, Config $config )
$subjectMetadata PhpBench\Benchmark\Metadata\SubjectMetadata
$iteration PhpBench\Model\Iteration
$config PhpBench\Registry\Config
    public function execute(SubjectMetadata $subjectMetadata, Iteration $iteration, Config $config)
    {
        // add 100 bytes of memory.
        $memory = 100;
        $iteration->setResult(new MemoryResult($memory, $memory, $memory));
        if (!$config['times']) {
            $iteration->setResult(new TimeResult(0));
            return;
        }
        $variantHash = spl_object_hash($iteration->getVariant());
        if (!isset($this->variantTimes[$variantHash])) {
            $this->variantTimes[$variantHash] = $config['times'];
        }
        if (!isset($this->variantTimes[$variantHash][$this->index])) {
            $this->index = 0;
        }
        $time = $this->variantTimes[$variantHash][$this->index];
        $this->index++;
        if ($config['spread']) {
            $index = $iteration->getIndex() % count($config['spread']);
            $spreadDiff = $config['spread'][$index];
            $time = $time + $spreadDiff;
        }
        $iteration->setResult(new TimeResult($time));
    }