QAbstractGrpcClient 类
QAbstractGrpcClient 类是 gRPC 客户端和通道之间的桥梁。 更多信息...
头文件 | #include <QAbstractGrpcClient> |
CMake | find_package(Qt6 REQUIRED COMPONENTS Grpc) target_link_libraries(mytarget PRIVATE Qt6::Grpc) |
自 | Qt 6.5 |
继承 | QObject |
状态 | 技术预览 |
公共函数
void | attachChannel(const std::shared_ptr<QAbstractGrpcChannel> &channel) |
(since 6.7) const std::shared_ptr<QAbstractGrpcChannel> & | channel() |
信号
(since 6.7) void | channelChanged() |
void | errorOccurred(const QGrpcStatus &status) |
保护函数
std::shared_ptr<StreamType> | startStream(QLatin1StringView method, const QProtobufMessage &arg, const QGrpcCallOptions &options) |
详细描述
QAbstractGrpcClient 为从 protobuf 服务生成的客户端类提供了一套函数。QAbstractGrpcClient 确保生成的客户端类的 startStream() 和 call() 方法的线程安全。应该仅由生成的客户端类调用 QAbstractGrpcClient::call() 和 QAbstractGrpcClient::startStream() 方法。
成员函数文档
void QAbstractGrpcClient::attachChannel(const std::shared_ptr<QAbstractGrpcChannel> &channel)
将 channel 添加到客户端作为 gRPC 的传输层。
参数和返回值将序列化到它支持的通道格式中。
注意:警告:Qt GRPC 无法保证通道级别的线程安全。您必须在与 QAbstractGrpcClient 相同的线程上调用与通道相关的函数。
注意:属性 channel 的设置函数。
[since 6.7]
const std::shared_ptr<QAbstractGrpcChannel> &QAbstractGrpcClient::channel()
返回附加到该客户端的通道。
注意:属性 channel 的获取函数。
此函数是在 Qt 6.7 中引入的。
[信号,since 6.7]
void QAbstractGrpcClient::channelChanged()
指示已将新通道连接到客户端。
注意: 属性channel的通告信号。
此函数是在 Qt 6.7 中引入的。
[信号]
void QAbstractGrpcClient::errorOccurred(const QGrpcStatus &status)
指示在序列化过程中发生错误。
当通道或序列化过程中发生错误时发出此信号。
另请参阅 QGrpcOperation::errorOccurred.
[受保护]
模板 <typename ParamType, typename StreamType> std::shared_ptr<StreamType> QAbstractGrpcClient::startStream(QLatin1StringView method, const QProtobufMessage &arg, const QGrpcCallOptions &options)
使用消息参数 arg 和 method 开始附加通道的 StreamType 类型的 method 流。
使用 options 参数设置流通信中的附加参数。
此实现仅适用于 StreamType:QGrpcServerStream、QGrpcClientStream 和 QGrpcBidirStream。
© 2024 Qt 公司。此文件中的文档贡献是各自所有者的版权。提供的文档受GNU自由文档许可证版本1.3的条款约束,该许可证由免费软件基金会出版。Qt 及相关标识是芬兰以及其他国家的 Qt 公司的商标。所有其他商标均为其各自所有者的财产。