Sur cette page

QGrpcBidiStream Class

La classe QGrpcBidiStream permet de gérer les appels RPC à flux bidirectionnel. En savoir plus...

En-tête : #include <QGrpcBidiStream>
CMake : find_package(Qt6 REQUIRED COMPONENTS Grpc)
target_link_libraries(mytarget PRIVATE Qt6::Grpc)
Depuis : Qt 6.7
Hérite de : QGrpcOperation

Fonctions publiques

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

Signaux

Description détaillée

La classe QGrpcBidiStream fournit l'interface permettant de gérer les appels de procédure à distance (RPC) à flux bidirectionnel, ce qui constitue l'une des quatre gRPC™méthodes de service.

Pour une vue d'ensemble, consultez le Guide du client «Qt GRPC ».

Remarque : il incombeaux utilisateurs de gérer les gestionnaires RPC uniques renvoyés par l’interface Client, en s’assurant de leur existence au moins jusqu’à l’émission du signal finished. Après réception de ce signal, le gestionnaire peut être réaffecté ou détruit en toute sécurité.

Documentation des fonctions membres

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

Supprime l'QGrpcBidiStream.

[signal] void QGrpcBidiStream::messageReceived()

Ce signal est émis lorsque le RPC en flux continu a reçu un nouveau message du serveur. Les méthodes ` read()` peuvent alors être utilisées pour désérialiser le message reçu.

void QGrpcBidiStream::writeMessage(const QProtobufMessage &message)

Sérialise l'objet ` message ` et l'envoie au serveur.

[since 6.8] void QGrpcBidiStream::writesDone()

Met fin au flux côté client (demi-fermeture). Le serveur peut toujours envoyer des réponses après cet appel.

Cette fonction a été introduite dans Qt 6.8.

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