このページでは

QAbstractGrpcChannel Class

QAbstractGrpcChannel クラスは、 gRPC™ 操作のトランスポート層を実装するためのインターフェースを提供します。詳細...

ヘッダー: #include <QAbstractGrpcChannel>
CMake: find_package(Qt6 REQUIRED COMPONENTS Grpc)
target_link_libraries(mytarget PRIVATE Qt6::Grpc)
以下より: Qt 6.5
継承元:

QGrpcHttp2Channel

パブリック関数

virtual ~QAbstractGrpcChannel()
const QGrpcChannelOptions &channelOptions() const &
virtual std::shared_ptr<QAbstractProtobufSerializer> serializer() const = 0
(since 6.8) void setChannelOptions(QGrpcChannelOptions &&options)
(since 6.8) void setChannelOptions(const QGrpcChannelOptions &options)

プロテクト関数

QAbstractGrpcChannel()
QAbstractGrpcChannel(const QGrpcChannelOptions &options)

プライベート関数

(since 6.7) virtual void bidiStream(QGrpcOperationContext *operationContext, QByteArray &&messageData) = 0
(since 6.7) virtual void call(QGrpcOperationContext *operationContext, QByteArray &&messageData) = 0
(since 6.7) virtual void clientStream(QGrpcOperationContext *operationContext, QByteArray &&messageData) = 0
(since 6.7) virtual void serverStream(QGrpcOperationContext *operationContext, QByteArray &&messageData) = 0

詳細な説明

このインターフェースを実装して、 gRPC™QGrpcHttp2Channel クラスは、HTTP/2通信向けのQAbstractGrpcChannelの完全な機能を実装したクラスとして提供されています。

QGrpcChannelOptions およびQGrpcHttp2Channelも参照してください 。

メンバ関数のドキュメント

[protected] QAbstractGrpcChannel::QAbstractGrpcChannel()

QAbstractGrpcChannel をデフォルトコンストラクタで生成します。

[explicit protected] QAbstractGrpcChannel::QAbstractGrpcChannel(const QGrpcChannelOptions &options)

指定されたoptions を使用して、QAbstractGrpcChannelを構築します。

[virtual noexcept] QAbstractGrpcChannel::~QAbstractGrpcChannel()

QAbstractGrpcChannel を削除します。

[pure virtual private, since 6.7] void QAbstractGrpcChannel::bidiStream(QGrpcOperationContext *operationContext, QByteArray &&messageData)

この純粋仮想関数は、ユーザーが生成されたクライアントインターフェースを通じて新しいRPCを開始した際に呼び出されます。operationContext を使用して、QGrpcOperation オブジェクトの派生型である対応するRPCハンドラと通信する必要があります。

この関数は、シリアライズされたmessageData を使用して、チャネル側で対応するRPCを開始する必要があります。実装は非同期でなければならず、呼び出しスレッドをブロックしてはなりません。

注: RPC タイプが許可する機能のサブセットをサポートおよび制限するのは、チャネルの責任です 。

この関数は Qt 6.7 で導入されました。

[pure virtual private, since 6.7] void QAbstractGrpcChannel::call(QGrpcOperationContext *operationContext, QByteArray &&messageData)

この純粋仮想関数は、ユーザーが生成されたクライアントインターフェースを通じて新しいRPCを開始した際に呼び出されます。operationContext を使用して、QGrpcOperation オブジェクトの派生型である対応するRPCハンドラと通信する必要があります。

この関数は、シリアライズされたmessageData を使用して、チャネル側で対応するRPCを開始する必要があります。実装は非同期でなければならず、呼び出し元のスレッドをブロックしてはなりません。

注: RPC タイプが許可する機能のサブセットをサポートおよび制限するのは、チャネルの責任です 。

この関数は Qt 6.7 で導入されました。

[noexcept] const QGrpcChannelOptions &QAbstractGrpcChannel::channelOptions() const &

そのチャネルで使用されているオプションを返します。

setChannelOptionsも参照してください 。

[pure virtual private, since 6.7] void QAbstractGrpcChannel::clientStream(QGrpcOperationContext *operationContext, QByteArray &&messageData)

この純粋仮想関数は、ユーザーが生成されたクライアントインターフェースを通じて新しいRPCを開始した際に呼び出されます。operationContext を使用して、QGrpcOperation オブジェクトの派生型である対応するRPCハンドラと通信する必要があります。

この関数は、シリアル化されたmessageData を使用して、チャネル側で対応するRPCを開始する必要があります。実装は非同期でなければならず、呼び出しスレッドをブロックしてはなりません。

注: チャネルは、その RPC 型が許可する機能のサブセットをサポートおよび制限する責任を負います 。

この関数は Qt 6.7 で導入されました。

[pure virtual] std::shared_ptr<QAbstractProtobufSerializer> QAbstractGrpcChannel::serializer() const

この純粋仮想関数は、メッセージのシリアライズおよびデシリアライズに使用されるQAbstractProtobufSerializer を取得します。

[pure virtual private, since 6.7] void QAbstractGrpcChannel::serverStream(QGrpcOperationContext *operationContext, QByteArray &&messageData)

この純粋仮想関数は、ユーザーが生成されたクライアントインターフェースを通じて新しいRPCを開始した際に呼び出されます。operationContext を使用して、QGrpcOperation オブジェクトの派生型である対応するRPCハンドラと通信する必要があります。

この関数は、シリアライズされたmessageData を使用して、チャネル側で対応する RPC を起動する必要があります。実装は非同期でなければならず、呼び出しスレッドをブロックしてはなりません。

注: RPC タイプが許可する機能のサブセットをサポートおよび制限するのは、チャネルの責任です 。

この関数は Qt 6.7 で導入されました。

[since 6.8] void QAbstractGrpcChannel::setChannelOptions(QGrpcChannelOptions &&options)

[since 6.8] void QAbstractGrpcChannel::setChannelOptions(const QGrpcChannelOptions &options)

options チャンネルを設定します。

注: 更新されたチャネルオプションは 、現在アクティブなコールやストリームには影響しません。変更されたオプションは、このチャネルを通じて行われる新しい RPC にのみ適用されます。

これらの関数は Qt 6.8 で導入されました。

channelOptionsも参照してください 。

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