Construct GeneratorExit

Performance Diagrams

Construct GeneratorExit 002000000020000000400000004000000060000000600000008000000080000000100000000100000000120000000120000000140000000140000000160000000160000000CPython 3.12Nuitka (main)Nuitka (develop)Nuitka (factory)16992992788.11538461538461257.0CPython 3.1224709326240.03846153846155468.1826051110603Nuitka (main)24802861391.96153846153845468.0465847060142Nuitka (develop)24801390543.8846153846154468.04872386264884Nuitka (factory)Construct GeneratorExitTicks Construct GeneratorExit 00100000001000000020000000200000003000000030000000400000004000000050000000500000006000000060000000700000007000000080000000800000009000000090000000100000000100000000110000000110000000120000000120000000130000000130000000140000000140000000CPython 3.11Nuitka (main)Nuitka (develop)Nuitka (factory)14227954888.11538461538461257.0CPython 3.1147304575240.03846153846155421.9553805282736Nuitka (main)47251443391.96153846153845422.0476617788114Nuitka (develop)47251465543.8846153846154422.0476235685518Nuitka (factory)Construct GeneratorExitTicks Construct GeneratorExit 0010000000100000002000000020000000300000003000000040000000400000005000000050000000600000006000000070000000700000008000000080000000CPython 3.10Nuitka (main)Nuitka (develop)Nuitka (factory)8972685488.95192307692307257.0CPython 3.1045103479242.31730769230768379.8965686901442Nuitka (main)45103230395.6826923076923379.8972544573145Nuitka (develop)45103257549.0480769230769379.8971800970189Nuitka (factory)Construct GeneratorExitTicks Construct GeneratorExit 002000000020000000400000004000000060000000600000008000000080000000100000000100000000120000000120000000140000000140000000160000000160000000180000000180000000200000000200000000220000000220000000240000000240000000260000000260000000CPython 2.7Nuitka (main)Nuitka (develop)Nuitka (factory)27831635888.11538461538461257.0CPython 2.7122204030240.03846153846155395.6111770581702Nuitka (main)122204230391.96153846153845395.6109994793988Nuitka (develop)122204230543.8846153846154395.6109994793988Nuitka (factory)Construct GeneratorExitTicks

Source Code with Construct

    exc = GeneratorExit

    try:
        # construct_begin
        throw(exc)
        # construct_alternative


    except exc:
        pass

    return throw, exc


for x in itertools.repeat(None, 50000):
    calledRepeatedly()

print("OK.")

#     Python test originally created or extracted from other peoples work. The
#     parts from me are licensed as below. It is at least Free Software where
#     it's copied from other people. In these cases, that will normally be
#     indicated.
#
#     Licensed under the Apache License, Version 2.0 (the "License");
#     you may not use this file except in compliance with the License.
#     You may obtain a copy of the License at
#
#         http://www.apache.org/licenses/LICENSE-2.0
#
#     Unless required by applicable law or agreed to in writing, software
#     distributed under the License is distributed on an "AS IS" BASIS,
#     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#     See the License for the specific language governing permissions and
#     limitations under the License.

Source Code without Construct

    exc = GeneratorExit

    try:
        # construct_begin

        # construct_alternative
        pass
        # construct_end
    except exc:
        pass

    return throw, exc


for x in itertools.repeat(None, 50000):
    calledRepeatedly()

print("OK.")

#     Python test originally created or extracted from other peoples work. The
#     parts from me are licensed as below. It is at least Free Software where
#     it's copied from other people. In these cases, that will normally be
#     indicated.
#
#     Licensed under the Apache License, Version 2.0 (the "License");
#     you may not use this file except in compliance with the License.
#     You may obtain a copy of the License at
#
#         http://www.apache.org/licenses/LICENSE-2.0
#
#     Unless required by applicable law or agreed to in writing, software
#     distributed under the License is distributed on an "AS IS" BASIS,
#     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#     See the License for the specific language governing permissions and
#     limitations under the License.