QDBusPendingCall Class

QDBusPendingCallクラスは、保留中の非同期コールを1つ参照します。詳細...

ヘッダー #include <QDBusPendingCall>
CMake: find_package(Qt6 REQUIRED COMPONENTS DBus)
target_link_libraries(mytarget PRIVATE Qt6::DBus)
qmake: QT += dbus
継承元:

QDBusPendingCallWatcher

パブリック関数

QDBusPendingCall(const QDBusPendingCall &other)
~QDBusPendingCall()
void swap(QDBusPendingCall &other)
QDBusPendingCall &operator=(const QDBusPendingCall &other)

静的パブリック・メンバー

QDBusPendingCall fromCompletedCall(const QDBusMessage &msg)
QDBusPendingCall fromError(const QDBusError &error)

詳細説明

QDBusPendingCall オブジェクトは、応答を待たずに D-Bus 経由で送信されたメソッド呼び出しへの参照です。QDBusPendingCall は不透明な型であり、保留中の応答に対するハンドルとして使用されることを意図しています。

ほとんどのプログラムでは、QDBusPendingCallクラスは直接使用されません。リプライの内容にアクセスしたり、リプライが完了するのを待ったりするために、テンプレート・ベースのQDBusPendingReply で安全に置き換えることができます。

QDBusPendingCallWatcher クラスを使用すると、応答が到着したとき、または呼び出しがタイムアウトしたときを示すシグナルに接続することができます。また、返信が到着するまでプログラムの実行を一時停止するQDBusPendingCallWatcher::waitForFinished ()メソッドも用意されている。

注意: QDBusPendingCall オブジェクトのコピーを作成すると、すべての情報が多数のコピー間で共有されます。したがって、QDBusPendingCallは明示的に共有されるオブジェクトであり、コピーをデタッチするメソッドは提供されません(同じペンディング・コールを参照しているため)。

QDBusPendingReply およびQDBusPendingCallWatcherも参照のこと

メンバ関数ドキュメント

QDBusPendingCall::QDBusPendingCall(const QDBusPendingCall &other)

other 保留中の非同期呼び出しのコピーを作成する。両方のオブジェクトが同じペンディング中の呼を参照することに注意。

[noexcept] QDBusPendingCall::~QDBusPendingCall()

QDBusPendingCall オブジェクトのこのコピーを破棄する。このコピーが保留中の非同期呼び出しの最後のコピーでもある場合、呼び出しはキャンセルされ、それ以降の通知は受け取れない。リプライが到着しても、その内容にアクセスする方法はない。

[static] QDBusPendingCall QDBusPendingCall::fromCompletedCall(const QDBusMessage &msg)

メッセージmsg に基づいてQDBusPendingCall オブジェクトを作成する。メッセージは、QDBusMessage::ErrorMessage またはQDBusMessage::ReplyMessage (つまり、完了した呼の典型的なメッセージ)でなければならない。

この関数は、保留中の呼をシミュレートする必要があるが、その呼はすでに終了しているコードに有用である。

fromError()も参照

[static] QDBusPendingCall QDBusPendingCall::fromError(const QDBusError &error)

エラー条件error に基づいてQDBusPendingCall オブジェクトを生成する。その結果、保留中の呼び出しオブジェクトは "finished" 状態となり、QDBusPendingReply<Types...>::isError() は true を返す。

fromCompletedCall()も参照

[noexcept] void QDBusPendingCall::swap(QDBusPendingCall &other)

この保留中のコールインスタンスをother と交換する。この操作は非常に高速で、失敗することはない。

QDBusPendingCall &QDBusPendingCall::operator=(const QDBusPendingCall &other)

other 保留中の非同期呼のコピーを作成し、以前に参照した呼への参照を削除する。この関数の後、両方のオブジェクトが同じペンディング中の呼を参照する ことに注意。

このオブジェクトが、保留中の非同期呼の最後の参照を含んでいた場合、呼はキャンセル され、それ以降の通知は受け取れない。リプライが到着しても、その内容にアクセスする方法はない。

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.