Hi, Our client application and our server will continuously exchange messages:
- Client may send a message containing a gps coordinate every 10 seconds to the server - Server may send a message containing geolocalized information - If there is nothing close the client gps position, server sends nothing - If an incoming information appears close the client gps position, server push a message to the client We plan to define our service like this: service Information rpc GetInformation(stream ClientPosition) returns (stream GeoInformation); } >From an implementation point of view, client and server will keep sending and receiving message forever. They won't call grpc::ClientReaderWriter::WritesDone at any time, or may be only if grpc::ClientReaderWriter::Write or grpc::ClientReaderWriter::Read return false. We didn't see any such use case in C++ examples <https://github.com/grpc/grpc/tree/master/examples/cpp> in the github gRPC repository. Stream based examples assumes that client or server will write a sequence of messages, indicate the sequence is finished, then read a sequence as a response. done. Is a never ending bidirectionnal stream a valid usage of gRPC ? Thank you, David -- You received this message because you are subscribed to the Google Groups "grpc.io" group. To unsubscribe from this group and stop receiving emails from it, send an email to grpc-io+unsubscr...@googlegroups.com. To post to this group, send email to grpc-io@googlegroups.com. Visit this group at https://groups.google.com/group/grpc-io. To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/ae2fbc6f-dbb5-4093-8354-cf3ca3172621%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.