Thread
-
이번 포스트에서는 multi thread의 개념에 대해 살펴보자. Process와 Thread ProcessThread를 알기 위해서는 먼저 Process에 대해서 알아야 한다.Process란 실행중인 프로그램 자체를 생각하면 된다. Eclipse같은 IDE, 지금 사용중인 Browser, 문서 편집을 위한 Word 등이 모두 Process다. Process는 프로그램 실행에 필요한 모든 데이터, 메모리 등 자원과 thread로 구성된다.그럼 Multi Process란 뭘까? 이는 동시에 여러 개의 프로세스를 실행시키는 것이다. 음악을 들으면서 Eclipse로 작업 하는 것이 대표적인 Multi Process 환경이다. 우리가 사용하는 OS들은 대부분 Multi Process를 지원한다.이때 실행되는..
[Thread] 01. Multi Thread 개념이번 포스트에서는 multi thread의 개념에 대해 살펴보자. Process와 Thread ProcessThread를 알기 위해서는 먼저 Process에 대해서 알아야 한다.Process란 실행중인 프로그램 자체를 생각하면 된다. Eclipse같은 IDE, 지금 사용중인 Browser, 문서 편집을 위한 Word 등이 모두 Process다. Process는 프로그램 실행에 필요한 모든 데이터, 메모리 등 자원과 thread로 구성된다.그럼 Multi Process란 뭘까? 이는 동시에 여러 개의 프로세스를 실행시키는 것이다. 음악을 들으면서 Eclipse로 작업 하는 것이 대표적인 Multi Process 환경이다. 우리가 사용하는 OS들은 대부분 Multi Process를 지원한다.이때 실행되는..
2024.07.03 -
다음의 무거운 작업을 수행해야한다고 생각해보자. public long heavyWork(int th) { long result = 1; for (int i = 0; i < Integer.MAX_VALUE; i++) { result += i; } System.out.printf("%d th done: %d\n", th, result); return result; } 위의 작업을 총 10번 해서 총 결과를 알고 싶다면 아래와 같이 작업할 수 있다. public void getSumByNormal() { long first = System.currentTimeMillis(); long result = 0; for (int i = 0; i < 10; i++) { result += heavyWork(i); } l..
Thread의 join 사용 예다음의 무거운 작업을 수행해야한다고 생각해보자. public long heavyWork(int th) { long result = 1; for (int i = 0; i < Integer.MAX_VALUE; i++) { result += i; } System.out.printf("%d th done: %d\n", th, result); return result; } 위의 작업을 총 10번 해서 총 결과를 알고 싶다면 아래와 같이 작업할 수 있다. public void getSumByNormal() { long first = System.currentTimeMillis(); long result = 0; for (int i = 0; i < 10; i++) { result += heavyWork(i); } l..
2019.08.03