跳至內容

Interrupt async call: Is it not supported in aws cpp sdk?

0

Hi,

I'm using aws cpp sdk to do some async call, specifically sqs->receiveMessagesAsync. However, I can't find a way to interrupt the call in the middle.

I looked up for documentation that quote "However, the client object must continue to exist until the asynchronous operation finishes" in sdk-for-cpp. I am looking for something that looks like the function checkInterrupted in java sdk.

So, could you add support for interrupt async call in aws-sdk-cpp?

1 個回答
0

Correct, there are no interrupts for this in the C++ sdk. Interrupts in C++ are generally bad and cause some bad undefined behaviors.

You can try to abort the call in in the middle by using "ContinueRequestHandler". Here is an example that being used in one of our tests.

已回答 2 年前

  • Thanks for the reply!

    However, I tried to use your recommended "ContinueRequestHandler", for the operation sqs->receiveMessagesAsync. The responding speed didn't change at all, and I believe it's still waiting for 20s for the long polling to end. Is there a better solution to this?

  • You can try setting a more aggressive timeout to decrease the amount of time that you're waiting. Sorry that there isn't a better solution.

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。