QGrpcBidiStream Class

The QGrpcBidiStream class provides access in handling bidirectional-streaming RPCs. More...

Header: #include <QGrpcBidiStream>
CMake: find_package(Qt6 REQUIRED COMPONENTS Grpc)
target_link_libraries(mytarget PRIVATE Qt6::Grpc)
Since: Qt 6.7
Inherits: QGrpcOperation

Public Functions

virtual ~QGrpcBidiStream() override
void writeMessage(const QProtobufMessage &message)
(since 6.8) void writesDone()

Signals

Detailed Description

The QGrpcBidiStream class provides the interface for handling bidirectional-streaming remote procedure calls (RPCs), which is one of the four gRPC service methods.

For a high-level overview, refer to the Qt GRPC Client Guide.

Note: Users are responsible for managing the unique RPC handlers returned by the Client interface, ensuring their existence at least until the finished signal is emitted. After receiving this signal, the handler can be safely reassigned or destroyed.

Member Function Documentation

[override virtual noexcept] QGrpcBidiStream::~QGrpcBidiStream()

Destroys the QGrpcBidiStream.

[signal] void QGrpcBidiStream::messageReceived()

This signal is emitted when the streaming RPC has received a new message from the server. The read() methods can then be used to deserialize the received message.

void QGrpcBidiStream::writeMessage(const QProtobufMessage &message)

Serializes message and sends it to the server.

[since 6.8] void QGrpcBidiStream::writesDone()

Ends the stream from the client side (half-closing). The server is still allowed to send responses after this call.

This function was introduced in Qt 6.8.

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