【问题标题】:How to cancel google cloud endpoints request in Android using the generated client library?如何使用生成的客户端库在 Android 中取消谷歌云端点请求?
【发布时间】:2020-12-31 17:55:07
【问题描述】:

documentation 中,它显示了如何使用 android 客户端库执行 google cloud endpoints api 请求的示例:

ScoreCollection scores = service.scores().list().execute();

有没有办法取消这个请求?我不知道怎么做。

有时我想取消不再需要的长时间执行的请求。

我知道我可以将它放入自己的线程中并取消线程,但这实际上不会中断.execute() 方法。

【问题讨论】:

    标签: android google-app-engine google-cloud-endpoints google-cloud-endpoints-v2


    【解决方案1】:

    有一些方法可以做到:

    1. 将每个请求包装在一个 Thread 类中并中断该线程(或者采取Runnable/Future/ExecutorService这些类更有用),重要说明:您已在代码中检查中断状态,然后退出任务。
    2. 试试RxJava

    【讨论】:

    • 我尝试使用这些方法中断线程,但它不会中断它。像 executor 这样的模式并不能保证在你打断它们时停止。
    • 别忘了,JVM 有一个协同中断机制,这意味着你必须通过你的代码(在一个任务中)检查中断标志,如果它被设置了 - 从任务中返回。跨度>
    猜你喜欢
    • 2013-04-15
    • 1970-01-01
    • 2018-03-26
    • 1970-01-01
    • 1970-01-01
    • 2014-04-13
    • 2016-03-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多