En esta página

QDBusPendingCall Class

La clase QDBusPendingCall hace referencia a una llamada asíncrona pendiente. Más...

Cabecera: #include <QDBusPendingCall>
CMake: find_package(Qt6 REQUIRED COMPONENTS DBus)
target_link_libraries(mytarget PRIVATE Qt6::DBus)
qmake: QT += dbus
Heredado Por:

QDBusPendingCallWatcher

Funciones Públicas

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

Miembros Públicos Estáticos

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

Descripción Detallada

Un objeto QDBusPendingCall es una referencia a una llamada de método que fue enviada a través de D-Bus sin esperar respuesta. QDBusPendingCall es un tipo opaco, pensado para ser utilizado como handle de una respuesta pendiente.

En la mayoría de los programas, la clase QDBusPendingCall no se utilizará directamente. Se puede sustituir de forma segura por la clase QDBusPendingReply, basada en plantillas, para acceder al contenido de la respuesta o esperar a que se complete.

La clase QDBusPendingCallWatcher permite conectarse a una señal que indicará cuándo ha llegado la respuesta o si se ha agotado el tiempo de espera de la llamada. También proporciona el método QDBusPendingCallWatcher::waitForFinished() que suspenderá la ejecución del programa hasta que la respuesta haya llegado.

Nota: Si se crea una copia de un objeto QDBusPendingCall, toda la información será compartida entre las distintas copias. Por lo tanto, QDBusPendingCall es un objeto explícitamente compartido y no proporciona un método para separar las copias (ya que se refieren a la misma llamada pendiente).

Véase también QDBusPendingReply y QDBusPendingCallWatcher.

Documentación de las funciones miembro

QDBusPendingCall::QDBusPendingCall(const QDBusPendingCall &other)

Crea una copia de la llamada asíncrona pendiente other. Ten en cuenta que ambos objetos harán referencia a la misma llamada pendiente.

[constexpr noexcept, since 6.10] QDBusPendingCall::QDBusPendingCall(QDBusPendingCall &&other)

Mueve other a este objeto.

Nota: El objeto movido-desde other se coloca en un estado parcialmente formado, en el que las únicas operaciones válidas son la destrucción y la asignación de un nuevo valor.

Esta función se introdujo en Qt 6.10.

[noexcept] QDBusPendingCall::~QDBusPendingCall()

Destruye esta copia del objeto QDBusPendingCall. Si esta copia es también la última copia de una llamada asíncrona pendiente, la llamada se cancelará y no se recibirán más notificaciones. No habrá forma de acceder al contenido de la respuesta cuando ésta llegue.

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

Crea un objeto QDBusPendingCall basado en el mensaje msg. El mensaje debe ser del tipo QDBusMessage::ErrorMessage o QDBusMessage::ReplyMessage (es decir, un mensaje típico de una llamada finalizada).

Esta función es útil para código que requiere simular una llamada pendiente, pero que ya ha finalizado.

Véase también fromError().

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

Crea un objeto QDBusPendingCall basado en la condición de error error. El objeto de llamada pendiente resultante estará en el estado "finalizado" y QDBusPendingReply<Types...>::isError() devolverá true.

Véase también fromCompletedCall().

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

Intercambia esta instancia de llamada pendiente con other. Esta operación es muy rápida y nunca falla.

[noexcept] QDBusPendingCall &QDBusPendingCall::operator=(QDBusPendingCall &&other)

Mueve-asigna other a este QDBusPendingCall.

Nota: El objeto movido-desde other se coloca en un estado parcialmente formado, en el que las únicas operaciones válidas son la destrucción y la asignación de un nuevo valor.

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

Crea una copia de la llamada asíncrona pendiente other y elimina la referencia a la llamada referenciada anteriormente. Tenga en cuenta que ambos objetos harán referencia a la misma llamada pendiente después de esta función.

Si este objeto contenía la última referencia de una llamada asíncrona pendiente, la llamada se cancelará y no se recibirán más notificaciones. No habrá forma de acceder al contenido de la respuesta cuando ésta llegue.

© 2026 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.