diff options
author | Mavridis Philippe <mavridisf@gmail.com> | 2024-07-26 19:37:27 +0300 |
---|---|---|
committer | Mavridis Philippe <mavridisf@gmail.com> | 2024-07-26 19:37:27 +0300 |
commit | a74979eff791cc86b90f5e418bae046b249e01e1 (patch) | |
tree | 61ad07c21cdea6ac7028bd108e6bde42f793de37 /src/tqdbusdispatcher_p.h | |
parent | 39160735cee72c3e5a3e8d672fd9f6cd39278c53 (diff) | |
download | dbus-1-tqt-feat/dispatcher-thread.tar.gz dbus-1-tqt-feat/dispatcher-thread.zip |
Add dispatcher thread implementation.feat/dispatcher-thread
This should fix the endless dispatcher loop which throttled CPU usage to 100%.
Signed-off-by: Mavridis Philippe <mavridisf@gmail.com>
Diffstat (limited to 'src/tqdbusdispatcher_p.h')
-rw-r--r-- | src/tqdbusdispatcher_p.h | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/src/tqdbusdispatcher_p.h b/src/tqdbusdispatcher_p.h new file mode 100644 index 0000000..a0949a6 --- /dev/null +++ b/src/tqdbusdispatcher_p.h @@ -0,0 +1,63 @@ +/* qdbusdispatcher_p.h TQT_DBusDispatcher private object + * + * Copyright (C) 2024 Mavridis Philippe <mavridisf@gmail.com> + * + * Licensed under the Academic Free License version 2.1 + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, + * USA. + * + */ + +// +// W A R N I N G +// ------------- +// +// This file is not part of the public API. This header file may +// change from version to version without notice, or even be +// removed. +// +// We mean it. +// +// + + +#ifndef TQDBUSDISPATCHER_P_H +#define TQDBUSDISPATCHER_P_H + +#include <tqthread.h> + +class TQT_DBusConnectionPrivate; +class TQMutex; + +class TQT_DBusDispatcher : public TQObject, public TQThread +{ + TQ_OBJECT + + public: + TQT_DBusDispatcher(TQT_DBusConnectionPrivate *connection); + ~TQT_DBusDispatcher(); + void run(); + + public slots: + void dispatch(); + + private: + TQT_DBusConnectionPrivate *m_connection; + TQMutex *m_busy; + bool m_dispatch; +}; + +#endif
\ No newline at end of file |