Thread 상속
class ThreadEx : Thread(){
override fun run() {
println("Thread run")
}
}
fun main() {
val thread1 = ThreadEx()
thread1.start()
}
- Thread 클래스를 상속받고 run()에 구현
Runnable 인터페이스
class ThreadEx : Runnable{
override fun run() {
println("Thread run")
}
}
fun main() {
val thread1 = Thread(ThreadEx())
thread1.start()
}
- 상위 클래스를 Thread로 할 수 없을 경우
Callable 인터페이스
class ThreadEx : Callable<String>{
override fun call(): String {
return "Thread run"
}
}
fun main() {
val thread1 = FutureTask(ThreadEx())
Thread(thread1).start()
println(thread1.get())
}
- 상위 클래스를 Thread로 할 수 없을 경우
- 쓰레드의 결과값을 리턴 받길 원할 경우
- call()을 get()으로 호출함
thread() 함수
val thread2 = thread(start = true){
println("Thread2 run")
}
'Kotlin > 8. Thread' 카테고리의 다른 글
8.5 Thread Synchronization (0) | 2023.10.09 |
---|---|
8.4 Join / Interrupt (0) | 2023.10.08 |
8.3 Thread 만드는 방법(2) (0) | 2023.10.02 |
8.1 Thread란 (0) | 2023.10.02 |
8. Thread (0) | 2023.10.02 |