qt5base-lts/src/dbus
Robin Burchell 972a653a86 QtDBus: Warn if blocking calls take too long.
Blocking DBus calls have the potential to totally wreck user interactivity at
best (actions taking too long) and make things appear completely broken at worst
(the default timeout is 30 seconds, which is a huge amount of time, especially
if you get unfortunate and have a repeated blocking call).

Provide a warning when a call is found that takes too long, based on some preset
durations (200ms for the main thread, 500ms for other threads on the basis that
the main thread is generally more important).

Also provide configuration knobs for these environment variables, in miliseconds:
setting them to 0 will warn on all blocking DBus calls. Setting them to -1 (the
default, on release builds) will disable the warning.

[ChangeLog][QtDBus] Blocking calls that take a long time will now generate a
warning. The time taken may be tuned using the environment variables
Q_DBUS_BLOCKING_CALL_MAIN_THREAD_WARNING_MS and
Q_DBUS_BLOCKING_CALL_OTHER_THREAD_WARNING_MS. The value represents (in
milliseconds) how long before a blocking call is warned on. A value below zero
disables the warning, a value of zero will warn on all blocking calls.

Change-Id: I0ab4c34aa01670a154d794d9f2694b3235e789db
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2014-07-25 04:01:03 +02:00
..
doc doc: Updated Qt D-Bus Examples. 2014-05-28 16:52:04 +02:00
dbus.pro Improve support for <MODULE>_PATH options 2013-05-10 19:39:53 +02:00
qdbus_symbols_p.h Add method to QDBusServer to allow anonymous client connections. 2014-01-15 14:15:22 +01:00
qdbus_symbols.cpp Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
qdbusabstractadaptor_p.h QtDBus: fix build on MSVC2008 Debug mode. 2013-09-15 01:35:33 +02:00
qdbusabstractadaptor.cpp Doc: Adding mark-up to boolean default values. 2013-10-08 00:46:27 +02:00
qdbusabstractadaptor.h Remove QT_{BEGIN,END}_HEADER macro usage 2013-01-29 01:06:04 +01:00
qdbusabstractinterface_p.h Fix crashes when calling into qdbus interfaces from QML 2014-01-02 16:15:10 +01:00
qdbusabstractinterface.cpp Fix crashes when calling into qdbus interfaces from QML 2014-01-02 16:15:10 +01:00
qdbusabstractinterface.h Remove QT_{BEGIN,END}_HEADER macro usage 2013-01-29 01:06:04 +01:00
qdbusargument_p.h Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
qdbusargument.cpp Always initialize integer types in D-Bus demarshalling 2014-03-06 12:21:14 +01:00
qdbusargument.h Remove QT_{BEGIN,END}_HEADER macro usage 2013-01-29 01:06:04 +01:00
qdbusconnection_p.h Fix data race in accessing QDBusConnectionPrivate::serviceNames 2014-06-15 23:04:28 +02:00
qdbusconnection.cpp Doc: Adding mark-up to boolean default values. 2013-10-08 00:46:27 +02:00
qdbusconnection.h Remove QT_{BEGIN,END}_HEADER macro usage 2013-01-29 01:06:04 +01:00
qdbusconnectioninterface.cpp Doc: Adding mark-up to boolean default values. 2013-10-08 00:46:27 +02:00
qdbusconnectioninterface.h Remove QT_{BEGIN,END}_HEADER macro usage 2013-01-29 01:06:04 +01:00
qdbusconnectionmanager_p.h Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
qdbuscontext_p.h Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
qdbuscontext.cpp Doc: Adding mark-up to boolean default values. 2013-10-08 00:46:27 +02:00
qdbuscontext.h Remove QT_{BEGIN,END}_HEADER macro usage 2013-01-29 01:06:04 +01:00
qdbusdemarshaller.cpp expand tabs and related whitespace fixes in *.{cpp,h,qdoc} 2014-01-13 22:46:50 +01:00
qdbuserror.cpp Doc: Adding mark-up to boolean default values. 2013-10-08 00:46:27 +02:00
qdbuserror.h Remove QT_{BEGIN,END}_HEADER macro usage 2013-01-29 01:06:04 +01:00
qdbusextratypes.cpp Doc: Fix module name format 2013-01-25 17:27:44 +01:00
qdbusextratypes.h Remove QT_{BEGIN,END}_HEADER macro usage 2013-01-29 01:06:04 +01:00
qdbusintegrator_p.h Fix change-of-sign warning found by ICC 2013-02-02 10:35:22 +01:00
qdbusintegrator.cpp QtDBus: Warn if blocking calls take too long. 2014-07-25 04:01:03 +02:00
qdbusinterface_p.h Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
qdbusinterface.cpp Doc: Fix module name format 2013-01-25 17:27:44 +01:00
qdbusinterface.h Remove QT_{BEGIN,END}_HEADER macro usage 2013-01-29 01:06:04 +01:00
qdbusinternalfilters.cpp Added PropertiesChanged signal to dbus introspection data 2014-01-09 22:34:54 +01:00
qdbusintrospection_p.h Whitespace cleanup: remove trailing whitespace 2013-03-16 20:22:50 +01:00
qdbusintrospection.cpp Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
qdbusmacros.h Remove QT_{BEGIN,END}_HEADER macro usage 2013-01-29 01:06:04 +01:00
qdbusmarshaller.cpp Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
qdbusmessage_p.h Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
qdbusmessage.cpp Doc: Adding mark-up to boolean default values. 2013-10-08 00:46:27 +02:00
qdbusmessage.h Merge remote-tracking branch 'origin/stable' into dev 2013-02-14 14:24:57 +01:00
qdbusmetaobject_p.h Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
qdbusmetaobject.cpp Make D-Bus types without a matching Qt one prettier in qdbus 2014-02-22 04:38:56 +01:00
qdbusmetatype_p.h Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
qdbusmetatype.cpp Doc: Adding mark-up to boolean default values. 2013-10-08 00:46:27 +02:00
qdbusmetatype.h Remove QT_{BEGIN,END}_HEADER macro usage 2013-01-29 01:06:04 +01:00
qdbusmisc.cpp QDBus: improve error handling, to give the developer feedback. 2013-07-01 17:04:23 +02:00
qdbuspendingcall_p.h Remove QDBusPendingCallPrivate::autoDelete logic. 2013-07-29 22:28:41 +02:00
qdbuspendingcall.cpp Doc: Adding mark-up to boolean default values. 2013-10-08 00:46:27 +02:00
qdbuspendingcall.h Remove QT_{BEGIN,END}_HEADER macro usage 2013-01-29 01:06:04 +01:00
qdbuspendingreply.cpp Merge remote-tracking branch 'origin/stable' into dev 2013-01-22 18:40:13 +01:00
qdbuspendingreply.h Make sure we don't have an operator void(), ICC doesn't like it. 2013-02-02 10:35:22 +01:00
qdbusreply.cpp Fix some documentation errors. 2014-03-24 16:42:02 +01:00
qdbusreply.h Add QDBusReply::error() const. 2013-03-01 09:39:23 +01:00
qdbusserver.cpp Add method to QDBusServer to allow anonymous client connections. 2014-01-15 14:15:22 +01:00
qdbusserver.h Add method to QDBusServer to allow anonymous client connections. 2014-01-15 14:15:22 +01:00
qdbusservicewatcher.cpp Doc: Adding mark-up to boolean default values. 2013-10-08 00:46:27 +02:00
qdbusservicewatcher.h Remove QT_{BEGIN,END}_HEADER macro usage 2013-01-29 01:06:04 +01:00
qdbusthreaddebug_p.h Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
qdbusunixfiledescriptor.cpp Doc: Adding mark-up to boolean default values. 2013-10-08 00:46:27 +02:00
qdbusunixfiledescriptor.h Fix module name in license headers. 2013-05-10 17:00:40 +02:00
qdbusutil_p.h Remove QT_{BEGIN,END}_HEADER macro usage 2013-01-29 01:06:04 +01:00
qdbusutil.cpp Doc: Adding mark-up to boolean default values. 2013-10-08 00:46:27 +02:00
qdbusvirtualobject.cpp Doc: correction link, example and parameter issues qtbase 2014-03-10 16:02:19 +01:00
qdbusvirtualobject.h Remove QT_{BEGIN,END}_HEADER macro usage 2013-01-29 01:06:04 +01:00
qdbusxmlgenerator.cpp QDBus: replace arg-chain with multi-arg 2014-02-14 00:34:25 +01:00
qdbusxmlparser_p.h Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
qdbusxmlparser.cpp qdbusxml2cpp: Fix annotation value in an introspection string generator 2013-09-27 10:29:18 +02:00
Qt5DBusConfigExtras.cmake.in Check that files we expect to find actually exist when using a cmake package. 2013-05-20 15:20:26 +02:00
Qt5DBusMacros.cmake CMake: Include the CMakeParseArguments module for dbus macros. 2014-04-16 15:21:50 +02:00