QAbstractGrpcChannel 类
QAbstractGrpcChannel 类是一个表示常见 gRPC 通道功能的接口。 更多...
头文件 | #include <QAbstractGrpcChannel> |
CMake | find_package(Qt6 REQUIRED COMPONENTS Grpc) target_link_libraries(mytarget PRIVATE Qt6::Grpc) |
自 | Qt 6.5 |
继承自 | |
状态 | 技术预览 |
公共函数
void | addInterceptorManager(const QGrpcClientInterceptorManager &manager) |
virtual std::shared_ptr<QAbstractProtobufSerializer> | serializer() const = 0 |
保护函数
(since 6.7) virtual void | call(std::shared_ptr<QGrpcChannelOperation> channelOperation) = 0 |
(since 6.7) virtual void | startBidirStream(std::shared_ptr<QGrpcChannelOperation> channelOperation) = 0 |
(since 6.7) virtual void | startClientStream(std::shared_ptr<QGrpcChannelOperation> channelOperation) = 0 |
(since 6.7) virtual void | startServerStream(std::shared_ptr<QGrpcChannelOperation> channelOperation) = 0 |
详细描述
实现此接口以创建自己的自定义 gRPC 传输通道。我们提供了 QGrpcHttp2Channel,它是 QAbstractGrpcChannel 的一个完全功能的实现,用于 HTTP/2 通信。
成员函数文档
void QAbstractGrpcChannel::addInterceptorManager(const QGrpcClientInterceptorManager &manager)
为通道设置拦截 manager。
[纯虚保护,自 6.7]
void QAbstractGrpcChannel::call(std::shared_ptr<QGrpcChannelOperation> channelOperation)
这个纯虚函数在调用 QAbstractGrpcChannel::call 公共方法时被调用。该 channelOperation 是指向一个与 QGrpcCallReply 原语相连的通道端 QGrpcChannelOperation 原语的指针,该原语用于 QAbstractGrpcClient 实现。
该函数应该实现单次调用的通道端逻辑。实现必须是异步的,不能阻塞调用该函数的线程。
此函数自 Qt 6.7 起被引入。
[纯虚函数,无抛出异常]
std::shared_ptr<QAbstractProtobufSerializer> QAbstractGrpcChannel::serializer() const
此纯虚函数应返回一个指向 QAbstractProtobufSerializer 的共享指针。
此函数被调用来获取用于消息序列化和反序列化的 QAbstractProtobufSerializer。
[纯虚保护函数,自6.7版本起]
void QAbstractGrpcChannel::startBidirStream(std::shared_ptr<QGrpcChannelOperation> channelOperation)
此纯虚函数启动双向流。参数 channelOperation 是指向与 QGrpcBidirStream 对象相连的通道端的 QGrpcChannelOperation 原始指针,该对象在 QAbstractGrpcClient 中使用。
该函数应该实现双向流的通道端逻辑。实现必须是异步的,不得阻塞调用该函数的线程。
此函数自 Qt 6.7 起被引入。
[纯虚保护函数,自6.7版本起]
void QAbstractGrpcChannel::startClientStream(std::shared_ptr<QGrpcChannelOperation> channelOperation)
此纯虚函数启动客户端流。参数 channelOperation 是指向与 QGrpcClientStream 对象相连的通道端的 QGrpcChannelOperation 原始指针,该对象在 QAbstractGrpcClient 中使用。
该函数应该实现客户端流的通道端逻辑。实现必须是异步的,不得阻塞调用该函数的线程。
此函数自 Qt 6.7 起被引入。
[纯虚保护函数,自6.7版本起]
void QAbstractGrpcChannel::startServerStream(std::shared_ptr<QGrpcChannelOperation> channelOperation)
此纯虚函数启动服务器端流。参数 channelOperation 是指向与 QGrpcServerStream 对象相连的通道端的 QGrpcChannelOperation 原始指针,该对象在 QAbstractGrpcClient 实现中使用。
该函数应该实现服务器端流的通道端逻辑。实现必须是异步的,不得阻塞调用该函数的线程。
此函数自 Qt 6.7 起被引入。
© 2024 Qt公司有限。此处包含的文档贡献属于各自的版权所有者。此处提供的文档是根据自由软件基金会发布、版本1.3的 GNU自由文档许可证 的条款许可的。Qt及其相关标志是芬兰及其它国家Qt公司有限的全局商标。所有其他商标均为其各自所有者的财产。