我有一个函数,使API调用服务器和更新用户界面与新数据。我想使,使每30秒我使API调用不同的url每次?这些API调用应该是不间断的,只要应用程序正在运行。
String url1 = "https://somewebsite.com/api/update-rates?locale=en";
String url2 = "https://somewebsite.com/api/update-rates?locale=ru";
String url3 = "https://somewebsite.com/api/update-rates?locale=fr";
public void getFreshRates (String url) {
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url(url)
.build();
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(@NonNull Call call, @NonNull IOException e) {
e.printStackTrace();
}
@Override
public void onResponse(@NonNull Call call, @NonNull Response response) throws IOException {
if(response.isSuccessful()) {
String myResponse = response.body().string();
// Handling the response here
}
MainActivity.this.runOnUiThread(new Runnable() {
@Override
public void run() {
// Updating My UI here
}
});
}
});
}
要每30秒运行一次,您可以使用本文的解决方案:间隔运行Java线程
此外,您还可以使用CompletableFuture
进行异步调用并检索结果:
CompletableFuture<Void> future1
= CompletableFuture.supplyAsync(() -> getFreshRates(url1));
CompletableFuture<Void> future2
= CompletableFuture.supplyAsync(() -> getFreshRates(url2));
CompletableFuture<Void> future3
= CompletableFuture.supplyAsync(() -> getFreshRates(url3));
CompletableFuture<Void> combinedFuture
= CompletableFuture.allOf(future1, future2, future3);
combinedFuture.get();
见:https://www.baeldung.com/java-completablefuture#Multiple
问题内容: 我想每0.5秒触发一次功能,并且能够启动,停止和重置计时器。我不太了解Python线程的工作方式,并且在使用python计时器时遇到了困难。 但是,当我执行两次时,我会不断得到帮助。有没有解决的办法?我尝试在每次开始之前申请。 伪代码: 问题答案: 最好的方法是一次启动计时器线程。在计时器线程中,你需要编写以下代码 然后,在启动计时器的代码中,可以停止事件来停止计时器。
问题内容: 我正在开发Django应用。我有一个API端点,如果需要,它必须执行必须重复几次的功能(直到满足特定条件为止)。我现在如何处理- 虽然我知道这是一种可怕的方法,并且我不应该阻塞2秒钟,但是我不知道该如何解决。 等待4秒后,此方法起作用。但是我想要使循环在后台运行并在some_fn返回True时停止的东西。(此外,可以肯定some_fn将返回True) 编辑- 阅读Oz123的响应给了我
争论严格适用于每个国家。 我不想为所有国家复制粘贴这个场景,我想知道我是否可以有功能/支持文件,这样我就可以取代“巴西”参数,以获得更动态的东西。 也许所有测试都像cucumber一样运行--参数“巴西”
问题内容: 使用它可以在指定的时间启动功能: 但是,如果我想多次启动该功能怎么办?每次经过一个时间间隔,我都想执行该功能(假设每60秒执行一次)。 问题答案: 如果您不在乎内的代码是否可能花费比您的间隔更长的时间,请使用: 一遍又一遍地触发作为第一个参数传入的函数。 更好的方法是与函数一起使用: 这样可以保证在执行代码之前不会进行下一个调用。在本示例中,我将其用作函数参考。这是给函数命名并在其中调
问题内容: 抱歉,我有点菜鸟,我只想知道我如何让此javascript每秒钟运行一次? 源代码: 问题答案: 使用setInterval()每x毫秒运行一段代码。 您可以将要每秒运行的代码包装到一个名为的函数中。 因此它将是: 要停止它,可以运行:
本文向大家介绍python每隔N秒运行指定函数的方法,包括了python每隔N秒运行指定函数的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了python每隔N秒运行指定函数的方法。分享给大家供大家参考。具体如下: 这是一个类似定时器的效果,每隔指定的秒数运行指定的函数,采用线程实现,代码简单实用。 希望本文所述对大家的Python程序设计有所帮助。