Server on receiving a request, returns a `StreamObserver` callback object. I understand that this callback object is not thread-safe and have couple of questions regarding how this object is handled.
If a client streams 3 messages (m1, m2, & m3) within a single recordRoute rpc call, does rpc server implementation ensure that `onNext` method is only called after previous onNext method finishes execution (assuming this is not the first message)?
Essentially, at any point of time, would only one thread from grpc worker-pool would be accessing StreamObserver callback object?
If m1 onNext takes 10 seconds to process, would m2 message would be hanging around in server queue for 10 seconds.