[Kotlin] 쓰레드
쓰레드란?
💡 로직을 동시에 실행할 수 있도록 도와주는것이다.
- 프로그램은 하나의 메인 쓰레드(실행흐름)가 존재한다.
- 하나의 메인 쓰레드는 —→ fun main() ←— 메인함수를 의미해요
- 실습 프로그램은 메인 쓰레드위에서 로직을 실행해서 동시처리가 불가능했어요
- 별도의 자식 쓰레드를 생성해서 동시에 로직을 실행할 수 있어요
- 코틀린은 thread 키워드로 쓰레드를 생성할 수 있어요
프로세스(Process)
프로그램이 메모리에 올라가서 실행될때 이를 프로세스 1개 라고 해요
보통 프로그램을 더블클릭하면 프로세스가 생겨요
쓰레드(Thread)
- 쓰레드는 프로세스보다 더 작은 단위에요
- 프로세스 안에서 더 작은 작업의 단위를 쓰레드 라고 불러요
- 쓰레드는 생성되서 수행할때 각 독립된 메모리 영역인 STACK 을 가져요
- 즉 쓰레드를 한 개 생성하면 스택메모리의 일정 영역을 차지해요
- 메모리 자료
쓰레드는 어디에 사용하는가?
- 몬스터를 공격하고, 체력이 줄어들고, 효과음이 동시에 발생해야한다.
- 경마 프로그램의 말들은 동시에 출발해서 경쟁해야 한다.
위와 같이 동시에 여러가지 로직을 생성해야할때 사용한다.