0

与えられた 2 クラスab

aクラスは非常に大きく、数十のメソッドがあります。

bクラスコードはこれだけです:

    class b {
        function __construct () {
            // do nothing
        }
    }

このクラスからオブジェクトを作成するパフォーマンスをテストしたいのですが、初めて、大きなクラスからa何百万回もサイクルでオブジェクトを作成します。

    $date_1 = microtime(TRUE);

    for ($i = 0; $i < 1000000; $i++) {
        $obj = new a();
    }

    $date_2 = microtime(TRUE);

    echo $date_2 - $date_1;

結果は約 0.34 秒です。

今、私bはサイクルで小さなクラスからオブジェクトを作成しています。

結果はなんと、1回目のテストタイムより約0.47秒…

なぜこれが起こったのか教えてもらえますか?それとも、テストのどこかで間違っているのでしょうか?

4

0 に答える 0