예제 #1
0
 /**
  * オブジェクトの初期化ができる
  * @test
  */
 public function オブジェクトの初期化ができる()
 {
     $bm1 = SMB\Benchmark::getInstance();
     SMB\Benchmark::clear();
     $bm2 = SMB\Benchmark::getInstance();
     $this->assertNotSame($bm1, $bm2);
     // 違うオブジェクトである
 }
예제 #2
0
|------------------------------------------------------------------------------
*/
// 上記でわかる通りシングルトンなので初期化用メソッドを持っています
// マーキングのクリア
$bm->clearMark('bench11');
// bench11をクリア
$bm->echoResult('bench11');
// => 出力なし
$bm->echoResultAll();
// => bench1〜bench10までの計測結果が出力される
// すべてのマーキングをクリア
$bm->clearMarkAll();
$bm->echoResultAll();
// => 出力なし
// インスタンスのクリア
SMB\Benchmark::clear();
/*
|------------------------------------------------------------------------------
| example.6 ベンチマークの結果だけを返す
|------------------------------------------------------------------------------
*/
// 単独の出力
$bm = SMB\Benchmark::getInstance()->measure(function () {
    usleep(50000);
    // 0.05秒
}, array(), 'bench12')->measure(function () {
    usleep(5000);
    // 0.005秒
}, array(), 'bench13');
echo $bm->result('bench12') . PHP_EOL;
// => 0.05・・・・