QDBusPendingCall Class
QDBusPendingCall 클래스는 하나의 보류 중인 비동기 호출을 나타냅니다. 더 보기...
| 헤더: | #include <QDBusPendingCall> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS DBus) target_link_libraries(mytarget PRIVATE Qt6::DBus) |
| qmake: | QT += dbus |
| 상속된 항목: |
- 상속받은 멤버를 포함한 모든 멤버 목록
- QDBusPendingCall은 암시적 공유 클래스의 일부입니다.
공개 함수
| QDBusPendingCall(const QDBusPendingCall &other) | |
(since 6.10) | QDBusPendingCall(QDBusPendingCall &&other) |
| ~QDBusPendingCall() | |
| void | swap(QDBusPendingCall &other) |
| QDBusPendingCall & | operator=(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 의 비동기 호출 대기 상태 복사본을 생성합니다. 두 객체 모두 동일한 대기 중인 호출을 참조한다는 점에 유의하십시오.
[constexpr noexcept default, since 6.10] QDBusPendingCall::QDBusPendingCall(QDBusPendingCall &&other)
other 를 이 객체로 이동합니다.
참고: 이동된객체 other 는 부분적으로 형성된 상태가 되며, 이 상태에서는 소멸과 새 값 할당만이 유효한 연산입니다.
이 함수는 Qt 6.10에서 도입되었습니다.
[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`로 교체합니다. 이 작업은 매우 빠르며 절대 실패하지 않습니다.
[noexcept] QDBusPendingCall &QDBusPendingCall::operator=(QDBusPendingCall &&other)
other 를 이 QDBusPendingCall 로 이동-할당합니다.
참고: 이동된객체 other 는 부분적으로 형성된 상태로 전환되며, 이 상태에서는 소멸과 새 값 할당만이 유효한 연산입니다.
QDBusPendingCall &QDBusPendingCall::operator=(const QDBusPendingCall &other)
other 의 보류 중인 비동기 호출에 대한 복사본을 생성하고, 이전에 참조되었던 호출에 대한 참조를 해제합니다. 이 함수가 실행된 후에는 두 객체 모두 동일한 보류 중인 호출을 참조하게 된다는 점에 유의하십시오.
이 객체가 대기 중인 비동기 호출에 대한 마지막 참조를 포함하고 있었다면, 해당 호출은 취소되며 더 이상 알림을 수신하지 않게 됩니다. 응답이 도착하더라도 그 내용에 접근할 방법은 없습니다.
© 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.