diff options
author | Olivier Goffart <ogoffart@trolltech.com> | 2010-03-30 16:01:49 (GMT) |
---|---|---|
committer | Olivier Goffart <olivier.goffart@nokia.com> | 2010-04-20 13:48:56 (GMT) |
commit | c90b3ec191430e8b6bf5526124919df0bd0cf518 (patch) | |
tree | 4f97b7636cba77ecc68d0a7c9bed3fdebce27404 /tests | |
parent | dab8d4c77795ed195f23e427945267e9e9a4df20 (diff) | |
download | Qt-c90b3ec191430e8b6bf5526124919df0bd0cf518.zip Qt-c90b3ec191430e8b6bf5526124919df0bd0cf518.tar.gz Qt-c90b3ec191430e8b6bf5526124919df0bd0cf518.tar.bz2 |
Benchmark emission of signal connected to nothing
Diffstat (limited to 'tests')
-rw-r--r-- | tests/benchmarks/corelib/kernel/qobject/main.cpp | 9 | ||||
-rw-r--r-- | tests/benchmarks/corelib/kernel/qobject/object.cpp | 3 | ||||
-rw-r--r-- | tests/benchmarks/corelib/kernel/qobject/object.h | 1 |
3 files changed, 11 insertions, 2 deletions
diff --git a/tests/benchmarks/corelib/kernel/qobject/main.cpp b/tests/benchmarks/corelib/kernel/qobject/main.cpp index 7f24ebd..8d05fcd 100644 --- a/tests/benchmarks/corelib/kernel/qobject/main.cpp +++ b/tests/benchmarks/corelib/kernel/qobject/main.cpp @@ -69,6 +69,7 @@ void QObjectBenchmark::signal_slot_benchmark_data() QTest::newRow("simple function") << 0; QTest::newRow("single signal/slot") << 1; QTest::newRow("multi signal/slot") << 2; + QTest::newRow("unconnected signal") << 3; } void QObjectBenchmark::signal_slot_benchmark() @@ -110,9 +111,13 @@ void QObjectBenchmark::signal_slot_benchmark() QBENCHMARK { singleObject.emitSignal0(); } - } else { + } else if (type == 2) { QBENCHMARK { - multiObject.emitSignal0(); + multiObject.emitSignal0(); + } + } else if (type == 3) { + QBENCHMARK { + singleObject.emitSignal1(); } } } diff --git a/tests/benchmarks/corelib/kernel/qobject/object.cpp b/tests/benchmarks/corelib/kernel/qobject/object.cpp index d775a32..3920e97 100644 --- a/tests/benchmarks/corelib/kernel/qobject/object.cpp +++ b/tests/benchmarks/corelib/kernel/qobject/object.cpp @@ -42,6 +42,9 @@ void Object::emitSignal0() { emit signal0(); } +void Object::emitSignal1() +{ emit signal1(); } + void Object::slot0() { } diff --git a/tests/benchmarks/corelib/kernel/qobject/object.h b/tests/benchmarks/corelib/kernel/qobject/object.h index 7e4933f..8f8fbe9 100644 --- a/tests/benchmarks/corelib/kernel/qobject/object.h +++ b/tests/benchmarks/corelib/kernel/qobject/object.h @@ -48,6 +48,7 @@ class Object : public QObject Q_OBJECT public: void emitSignal0(); + void emitSignal1(); signals: void signal0(); void signal1(); |