Notice
Recent Posts
Recent Comments
Link
투케이2K
105. (kotlin/코틀린) 코루틴 (coroutine) delay 딜레이 사용해 작업 처리 수행 실시 본문
[개발 환경 설정]
개발 툴 : AndroidStudio
개발 언어 : Kotlin
[소스 코드]
// =================================== [변수 선언 실시] ======================================
var coroutineJob: Job? = null
// =================================== [코루틴 정의 실시] =====================================
try{
/**
* ------------------------------------
* TODO [요약 설명]
* ------------------------------------
* 1. 코루틴은 동시성 프로그래밍으로 비동기적으로 실행되는 코드입니다
* ------------------------------------
* 2. 코루틴은 백그라운드 스레드 (네트워크 통신) 에서 코드를 처리할 때 자주 사용됩니다
* ------------------------------------
* 3. 코틀린 스코프는 새로운 코루틴을 생성함과 동시에 실행되어야 할 Job 을 그룹핑 합니다
* ------------------------------------
* 4. Main : 메인 쓰레드에 대한 Context 이며, UI 갱신이나 View 작업에 사용합니다
* ------------------------------------
* 5. 필요 import :
*
* import kotlinx.coroutines.CoroutineScope
* import kotlinx.coroutines.Dispatchers.Main
* import kotlinx.coroutines.launch
* ------------------------------------
* 6. 코루틴 개념 참고 사이트 : https://kkh0977.tistory.com/2761
* ------------------------------------
* 7. 코틀린 의존성 부여 참고 사이트 : https://kkh0977.tistory.com/2763
* ------------------------------------
* */
// ------------------------------------
// [로직 처리 실시]
coroutineJob = CoroutineScope(Main).launch {
// [작업 내용 처리]
for (i in 1..10){
Log.i("---","---")
Log.w("//===========//","================================================")
Log.i("","\n"+"[Test_Kotlin > onCreate() 메소드 : CoroutineScope 코루틴 로직 처리 실시]")
Log.i("","\n"+"[카운트 : "+ i +"]")
Log.w("//===========//","================================================")
Log.i("---","---")
// [딜레이 설정]
delay(1000)
// [ui 작업 실시]
display_textview.setText(i.toString())
}
}
// ------------------------------------
}
catch(e : Exception){
Log.i("---","---")
Log.e("//===========//","================================================")
Log.i("","\n"+"[Test_Kotlin > onCreate() 메소드 : 에러 상황 발생]")
Log.i("","\n"+"[error : "+ e.message +"]")
Log.e("//===========//","================================================")
Log.i("---","---")
}
[결과 출력]
반응형
'Kotlin' 카테고리의 다른 글
107. (kotlin/코틀린) 코루틴 (coroutine) join 조인 사용해 동기적 순차 로직 처리 실시 (0) | 2022.10.09 |
---|---|
106. (kotlin/코틀린) 코루틴 (coroutine) cancel 캔슬 사용해 작업 취소 수행 실시 (0) | 2022.10.09 |
104. (kotlin/코틀린) 안드로이드 코루틴 (coroutine) build.gradle implementation 의존성 설정 방법 (0) | 2022.10.09 |
103. (kotlin/코틀린) 코루틴 (coroutine) Main 사용해 UI 변경 작업 수행 실시 (0) | 2022.10.09 |
102. (kotlin/코틀린) 코루틴 (coroutine) 개념 간략 정리 실시 (0) | 2022.10.09 |
Comments