Java Flowable 定时器:设置延迟时间和示例代码
在 Java 中,可以使用 Flowable.timer() 方法来设置定时器的时间。该方法接受两个参数,第一个参数是等待时间,单位为毫秒,第二个参数是时间单位。
以下是一个使用 Flowable.timer() 方法设置定时器时间的示例代码:
import io.reactivex.Flowable;
import java.util.concurrent.TimeUnit;
public class TimerExample {
public static void main(String[] args) {
Flowable<Long> flowable = Flowable.timer(1, TimeUnit.SECONDS);
flowable.subscribe(
value -> System.out.println('Timer fired after 1 second'),
error -> System.err.println('Error occurred: ' + error),
() -> System.out.println('Timer completed')
);
// 阻塞主线程,以等待定时器完成
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
在上面的示例中,我们使用 Flowable.timer(1, TimeUnit.SECONDS) 方法创建了一个定时器,等待 1 秒后触发。然后,我们在订阅流中处理定时器的触发事件,并在定时器完成后打印相应的消息。
注意,为了等待定时器完成,我们在主线程中使用 Thread.sleep() 方法阻塞了 2 秒钟。这是因为在 RxJava 中,流是异步执行的,如果不阻塞主线程,程序会立即退出,而不会等待定时器完成。
原文地址: https://www.cveoy.top/t/topic/qm1N 著作权归作者所有。请勿转载和采集!