<RxJava>Timer

진섭·2023년 5월 27일
0

RxJava

목록 보기
7/20
post-thumbnail

📌 Timer 연산자란?

공식 문서에 따르면 지정된 시간이 지나고 난 후 항목을 하나 배출하는 Observable을 생성한다고 설명이 되어있습니다. 주로 주어진 시간이 지나고 값을 발행하는 일회성 작업이나 지연 실행이 필요한 경우에 사용이 된다.

📌 Timer 사용법

Timer 연산자는 Long 타입의 delay 파리미터 값에는 값이 발행하기까지의 지연 시간을 의미한다. timeUnitdelay의 시간 단위를 나타내는 파라미터이다.

Observable.timer(delay, timeUnit)

📌 10초 딜레이 후 값이 발행된다.

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        timerOperator().subscribe(
            {
                Log.d("timerOperator","onNext : $it")
                getLocation()
            },
            {
                Log.d("timerOperator","onError ${it}")
            },
            {
                Log.d("timerOperator","onComplete")
            }
        ).let { _ -> }


    }
    
    fun timerOperator(): Observable<Long> {
        return Observable.timer(10, TimeUnit.SECONDS)
    }
    
    fun getLocation(){
        Log.d("timerOperator","안녕하세요~")
    }
}

출력결과

profile
Android 개발자

0개의 댓글