728x90 코루틴2 코루틴과 스레드의 차이점 스레드와 코루틴은 모두 프로그램의 병렬 처리를 가능하게 하는 중요한 도구입니다. 하지만 두 개념은 몇 가지 중요한 차이점이 있습니다. 스레드 스레드는 운영체제에서 직접 관리되는 독립적인 실행 단위입니다. 각 스레드는 고유의 스택을 가지며, 스레드 간의 컨텍스트 전환은 상당히 비용이 크게 들 수 있습니다. 또한, 스레드의 수는 한정적이며, 너무 많은 스레드를 생성하면 성능이 저하될 수 있습니다. 예제 (자바 코드): Thread thread = new Thread(() -> { System.out.println("Thread: " + Thread.currentThread().getName()); }); thread.start(); 코루틴 코루틴은 프로그램 코드에서 생성되는 가벼운 실행 단위로, 스레드와 달.. 2023. 6. 2. 코루틴의 이해 코루틴은 비동기 작업을 단순화하는 기능으로, 복잡한 비동기 로직을 마치 순차적인 코드처럼 작성할 수 있게 해줍니다. 이를 통해 동시에 실행되는 여러 작업을 효율적으로 관리할 수 있습니다. 코루틴의 선언 launch나 async 같은 코루틴 빌더를 사용해서 코루틴을 시작할 수 있습니다. 이 빌더들은 코루틴 스코프 내에서 비동기 작업을 실행합니다. 예제: import kotlinx.coroutines.* fun main() { GlobalScope.launch { // 새로운 코루틴을 백그라운드에 실행합니다. delay(1000L) // 1초 동안 비동기로 대기합니다. println("World!") // 딜레이 후 출력합니다. } print("Hello, ") // 코루틴이 지연되는 동안 메인 스레드는 계.. 2023. 6. 2. 이전 1 다음 728x90