본문 바로가기
개발노트/Android

android : Timer 사용하기

by 전지적진영시점 2022. 4. 14.
반응형

#타이머를 사용해보자

 

해시태그 걸기~~~~ 

 

Timer

타이머를 검색하고 한국어로 번역했더니;;!

시간제 노동자,.. 저를 말하고 있군요 ㅋㅋ

 

개발을 하다가 타이머를 메인으로 쓸 일이 생겨서 한번 정리하려 합니다 ! 막상 쓰려고 하니까

안드로이드에서 제공하는 타이머의 특성을 제가 정확히 모르고 있었습니다 쉐에에ㅔㅇㅅ~~~~~

 

 

---------------------------------------------------------------------------------------

 

**** 혹시 타이머 재실행을 n번 해야하시는 분은 timer 객체를 전역변수로 두시지 않는걸 추천합니다!

전역변수로 두고 처리할 수 있는 방법이 있을거 같긴한데 저는 타이머의 특성중 재활용이 안된다는 점 때문에

타이머와 관련된 로직을 하나의 func에서 처리하였습니다. ****

 

먼저 타이머를 생성해주세요

 

private fun initPlayTimer() {
    val timer = Timer()
   
    timer.schedule(object : TimerTask() {
        override fun run() {
            
        }
    }, 1000, 1000)
}

 

schedule()

지정된 지연 이후에 시작 하여 반복되는 고정 지연 실행을 위한 메서드이며 작업을 예약할 수 있습니다!

 

override fun run() {
	//input code
}

이 안에다가 지정된 지연 시간마다 반복해야하는 동작을 넣으면 됩니다

 

purge()

purge()는 웬만하면 쓸 일이 없는 메서드인데 타이머의 작업 대기열에서 취소된 작업을 날리는 메서드입니다

 

cancel()

cancel()는 타이머를 날리는 ! 즉 실행되고 있는 타이머를 취소시키는 메서드입니다

** 타이머를 취소시켰는데 또 취소시키면 에러가 나니까 cancel() 메서드는 위치를 잘 선정해서 넣어야 합니다ㅎㅎ

 

 

 

timer도 하나의 쓰레드이니 사용이 끝나면 꼭 cancel()을 해주는것이 best!

 

 

 

 

반응형

댓글