[JAVA] 쓰레드의 동기화(synchronization)
·
Java
쓰레드의 동기화(synchronization) 쓰레드의 동기화(synchronization)란 한 쓰레드가 진행중인 작업을 다른 쓰레드가 간섭하지 못하게 막는 것을 말한다. 싱글 쓰레드 프로세스라면 공유 데이터에 단 하나의 쓰레드 만이 접근하므로 문제가 되지 않는다. 하지만 멀티 쓰레드 프로세스의 경우 두 개 이상의 여러 쓰레드가 자원을 공유하기 때문에 데이터에 동시에 접근하게 된다면 다른 쓰레드에 영향을 미칠 수 있기 때문에 동기화가 필요하다. 동기화를 하지 않을 경우 class Main { public static void main(String args[]) { Runnable r = new RunnableEx13(); // RunnableEx13의 객체 r 생성 new Thread(r,"쓰레드1")..
[JAVA] 쓰레드(thread)
·
Java
프로세스와 쓰레드 (process & thread) 프로세스 : 실행중인 프로그램, 자원(resources)과 쓰레드로 구성 자원이란 메모리, Cpu와 같은 것을 말함 쓰레드 : 프로세스 내에서 실제 작업을 수행, 모든 프로세스는 최소한 하나의 쓰레드를 가지고 있다. 하나의 새로운 프로세스를 생성하는 것보다 하나의 새로운 쓰레드를 생성하는 것이 더 적은 비용이 든다. 멀티쓰레드의 장단점 대부분의 프로그램이 멀티쓰레드로 작성되어 있지만, 멀티쓰레드 프로그래밍이 장점만 있는 것은 아니다. 장점 - 시스템 자원을 보다 효율적으로 사용할 수 있다. - 사용자에 대한 응답성(responseness)이 향상된다. - 작업이 분리되어 코드가 간결해 진다. 단점 - 동기화(synchronization)에 주의해야 한다..
PP_D
'쓰레드' 태그의 글 목록