We used ClientWriter in our project and write() method fails if the other
end/network is down. Check if read() will bailout in case of down event.

I am not aware of any other solution.

On Fri, Apr 19, 2019 at 11:28 PM 'Rohan Chawhan' via grpc.io <
[email protected]> wrote:

> Hi Sidhartha,
> So is there another way for applying timeouts on streaming APIs? specially
> in the given context? I basically want to solve the internet connection
> error for my code.
>
> On Saturday, April 20, 2019 at 12:26:49 AM UTC+5:30, Sidhartha Thota wrote:
>>
>> If I am not wrong, clientContext cannot be applied for streaming APIs.
>> Thats what I saw from my experience. But I am happy to know if there is
>> solution for this.
>>
>> On Fri, Apr 19, 2019 at 6:28 AM 'Rohan Chawhan' via grpc.io <
>> [email protected]> wrote:
>>
>>> Hey All,
>>>
>>> I am using C++ to communicate with google speech api server.
>>>
>>> I am using the usual approach of setting a deadline for the
>>> clientcontext to handle timeout functionality.
>>>
>>> I have put the *deadlines *like:
>>> void SetContextDeadline(grpc::ClientContext *context, unsigned int
>>> user_defined_deadline){
>>> context->set_deadline(std::chrono::system_clock::now() +
>>> std::chrono::seconds(user_defined_deadline));
>>> }
>>>
>>> Now, this function is called whenever I want to set the deadline *from
>>> now(time)*
>>>
>>> *int main(){*
>>>   auto creds = grpc::GoogleDefaultCredentials();
>>>   auto channel = grpc::CreateChannel("speech.googleapis.com", creds);
>>>   std::unique_ptr<Speech::Stub> speech(Speech::NewStub(channel));
>>>
>>>   grpc::ClientContext context;
>>>
>>> // Set timeout of 8 seconds => also this is the timeout which I am not
>>> able to cancel to set new timer
>>> // Whenever it ends (after 8 seconds) my program is terminated
>>>   SetContextDeadline(&context,8);
>>>   auto streamer = speech->StreamingRecognize(&context);
>>>
>>>  // The microphone thread writes the audio content.
>>>   std::thread microphone_thread(&MicrophoneThreadMain, streamer.get(),
>>>                                 file_path);
>>> // Read responses.
>>>   StreamingRecognizeResponse response;
>>>   while (streamer->Read(&response)) {  // Returns false when no more to
>>> read.
>>>     // Now I want to cancel the previous deadline to set this new
>>> deadline, everytime I enter this loop
>>>     // I am seeing that this is setting the new deadline but the program
>>> still terminates at the older timeout
>>>     SetContextDeadline(&context,8);
>>>
>>>     // Dump the transcript of all the results.
>>>     // Implementation of response display
>>>   }
>>> }
>>>
>>>
>>>
>>> Thanks in advance for your help
>>>
>>>
>>> *Matrix Comsec Pvt. Ltd.*
>>> #394, GIDC Makarpura - 390010. Dist: Vadodara, Gujarat, India
>>> [image: Matrix Telecom | Security] <http://bit.ly/comsec-esignature>
>>> IP Video Surveillance |  <http://bit.ly/IPVS-esginature>People Mobility
>>> Management |  <http://bit.ly/cosec-esignature>Unified Communications
>>> <http://bit.ly/telecom-esignature>
>>> 1 Million+ Customers | 2,500+ Partners | 60+ Products | 50+ Countries
>>> *We put more in the box, so your business can think more out of the box.*
>>> [image: Facebook] <https://www.facebook.com/matrixcomsec> [image:
>>> linkedin] <http://www.linkedin.com/in/matrixcomsec> [image: twitter]
>>> <https://twitter.com/Matrix_ComSec>
>>> <https://www.linkedin.com/company/matrix-telecom-solutions/> [image:
>>> youtube] <https://www.youtube.com/user/MatrixComSec>
>>>
>>> --
>>> 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 [email protected].
>>> To post to this group, send email to [email protected].
>>> 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/d8e3fbb2-ef13-4c97-8ed3-57c1c58486c9%40googlegroups.com
>>> <https://groups.google.com/d/msgid/grpc-io/d8e3fbb2-ef13-4c97-8ed3-57c1c58486c9%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
>> --
>> Thanks,
>> Sidhartha Thota.
>>
>
> *Matrix Comsec Pvt. Ltd.*
> #394, GIDC Makarpura - 390010. Dist: Vadodara, Gujarat, India
> [image: Matrix Telecom | Security] <http://bit.ly/comsec-esignature>
> IP Video Surveillance |  <http://bit.ly/IPVS-esginature>People Mobility
> Management |  <http://bit.ly/cosec-esignature>Unified Communications
> <http://bit.ly/telecom-esignature>
> 1 Million+ Customers | 2,500+ Partners | 60+ Products | 50+ Countries
> *We put more in the box, so your business can think more out of the box.*
> [image: Facebook] <https://www.facebook.com/matrixcomsec> [image:
> linkedin] <http://www.linkedin.com/in/matrixcomsec> [image: twitter]
> <https://twitter.com/Matrix_ComSec>
> <https://www.linkedin.com/company/matrix-telecom-solutions/> [image:
> youtube] <https://www.youtube.com/user/MatrixComSec>
>
> --
> 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 [email protected].
> To post to this group, send email to [email protected].
> 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/5cfd3c40-19fe-40c5-967e-0f5ca12c68bf%40googlegroups.com
> <https://groups.google.com/d/msgid/grpc-io/5cfd3c40-19fe-40c5-967e-0f5ca12c68bf%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>


-- 
Thanks,
Sidhartha Thota.

-- 
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 [email protected].
To post to this group, send email to [email protected].
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/CALguN-E72bBMbaKFwmGSb1adec_eLSjSrqfd-dV3xEPiv%2BzkaA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to