annotate vendor/zendframework/zend-stdlib/benchmark/ExtractPriorityQueue.php @ 2:92f882872392

Trusted hosts, + remove migration modules
author Chris Cannam
date Tue, 05 Dec 2017 09:26:43 +0000
parents 4c8ae668cc8c
children
rev   line source
Chris@0 1 <?php
Chris@0 2 /**
Chris@0 3 * Zend Framework (http://framework.zend.com/)
Chris@0 4 *
Chris@0 5 * @link http://github.com/zendframework/zf2 for the canonical source repository
Chris@0 6 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
Chris@0 7 * @license http://framework.zend.com/license/new-bsd New BSD License
Chris@0 8 */
Chris@0 9
Chris@0 10 namespace ZendBench\Stdlib;
Chris@0 11
Chris@0 12 use Athletic\AthleticEvent;
Chris@0 13 use Zend\Stdlib\FastPriorityQueue;
Chris@0 14 use Zend\Stdlib\PriorityQueue;
Chris@0 15 use Zend\Stdlib\SplPriorityQueue;
Chris@0 16
Chris@0 17 class ExtractPriorityQueue extends AthleticEvent
Chris@0 18 {
Chris@0 19 public function classSetUp()
Chris@0 20 {
Chris@0 21 $this->splPriorityQueue = new SplPriorityQueue();
Chris@0 22 $this->fastPriorityQueue = new FastPriorityQueue();
Chris@0 23 $this->priorityQueue = new PriorityQueue();
Chris@0 24
Chris@0 25 for ($i = 0; $i < 5000; $i += 1) {
Chris@0 26 $priority = rand(1, 100);
Chris@0 27 $this->splPriorityQueue->insert('foo', $priority);
Chris@0 28 $this->fastPriorityQueue->insert('foo', $priority);
Chris@0 29 $this->priorityQueue->insert('foo', $priority);
Chris@0 30 }
Chris@0 31 }
Chris@0 32
Chris@0 33 /**
Chris@0 34 * @iterations 5000
Chris@0 35 */
Chris@0 36 public function extractSplPriorityQueue()
Chris@0 37 {
Chris@0 38 $this->splPriorityQueue->extract();
Chris@0 39 }
Chris@0 40
Chris@0 41 /**
Chris@0 42 * @iterations 5000
Chris@0 43 */
Chris@0 44 public function extractPriorityQueue()
Chris@0 45 {
Chris@0 46 $this->priorityQueue->extract();
Chris@0 47 }
Chris@0 48
Chris@0 49 /**
Chris@0 50 * @iterations 5000
Chris@0 51 */
Chris@0 52 public function extractFastPriorityQueue()
Chris@0 53 {
Chris@0 54 $this->fastPriorityQueue->extract();
Chris@0 55 }
Chris@0 56 }