Future stub is only suitable for Unary RPCs.   If you look at how the stub 
library is implemented, BlockingStubs wrap the FutureStubs, which wrap the 
regular Stubs, which themselves wrap ClientCall and ServerCall.  All are 
layers on top of the other, and get more advanced the farther down the 
layers you go.  The higher up, the more simple it is to use.

On Wednesday, November 14, 2018 at 1:57:20 PM UTC-8, constan...@gmail.com 
wrote:
>
> Why not using FutureStub? Seems it returning a ListenableFuture already 
> for client to use it? 
>
>
> 在 2018年11月14日星期三 UTC-5下午2:28:56,Carl Mastrangelo写道:
>>
>> Yes.  It is still async.  
>>
>> Do be aware that flow control works slightly differently for RPCs that 
>> don't have "stream" on them (we call these "unary" RPCs).   This is not 
>> usually an issue unless you are sending very fast or lots of data (like 
>> sustained Gigabits  per second).  
>>
>> On Wednesday, November 14, 2018 at 9:41:45 AM UTC-8, qplc wrote:
>>>
>>> Thank you Carl for your response.
>>>
>>> What if I don't use prefix 'stream' in service definition, shall rpc 
>>> calls still be executed in asynchronous manner by implementing 
>>> TestServiceGrpc.TestServiceStub?
>>>
>>> Modified service def:
>>> service TestService {
>>>   rpc testRPCCall(Test) returns (Test) {}
>>> }
>>>
>>>
>>> On Monday, November 12, 2018 at 5:37:56 PM UTC+5:30, qplc wrote:
>>>>
>>>> Hi,
>>>>
>>>> I've implemented below service definition in my grpc server/client 
>>>> application.
>>>>
>>>> service TestService {
>>>>   rpc testRPCCall(stream Test) returns (stream Test) {}
>>>> }
>>>>
>>>> I found below stubs can be implemented on proto file compilation.
>>>> TestServiceGrpc.TestServiceStub
>>>> TestServiceGrpc.TestServiceBlockingStub
>>>> TestServiceGrpc.TestServiceFutureStub
>>>> TestServiceGrpc.TestServiceImplBase
>>>>
>>>> I want to adapt asynchronous behavior of rpc calls. But, I'm not sure 
>>>> which one of above should be implemented. Is it mandatory to stream a rpc 
>>>> call(stream Test) as mentioned in above service definition for 
>>>> asynchronous 
>>>> implementation?
>>>>
>>>>
>>>> Thanks in advance.
>>>>
>>>>

-- 
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/29e0df2a-a622-4a3e-bbf7-eecd65e78168%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to