본문 바로가기
[Java Concurrency] 명시적인 락 13.1. Lock 과 ReentrantLock - Lock 인터페이스는 암묵적인 락과 달리 조건 없는(unconditional)락, 폴링 락, 타임아웃이 있는 락, 락 확보 대기 상태에 인터럽트를 걸 수 있는 방법 등이 포함돼 있으며, 락을 확보하고 해제하는 모든 작업이 명시적이다. - public interface Lock{ void lock(); void lockInterruptibly() throws InterruptedException; boolean tryLock(); boolean tryLock(long timeout, TimeUnit unit) throws InterruptedException; void unlock(); Condition newCondition(); } - Reentran.. 2017. 5. 5.
[Java Concurrency] 객체구성 [Java Concurrency] 객체구성 4.1. 스레드 안전한 클래스 설계 - 객체가 갖고 있는 여러 가지 정보를 해당 객체 내부에 숨겨두면 전체 프로그램을 다 뒤져볼 필요 없이 객체 단위로 스레드 안전성이 확보되어 있는지 확인할 수 있다. - 클래스가 스레드 안전성을 확보하도록 설계하고자 할 때에는 다음과 같이 세 가지를 고려해야 한다. 객체의 상태를 보관하는 변수가 어떤 것인가? 객체의 상태를 보관하는 변수가 가질 수 있는 값이 어떤 종류, 어떤 범위에 해당하는가? 객체 내부의 값을 동시에 사용하고자 할 때, 그 과정을 관리할 수 있는 정책 - n 개의 변수를 갖는 객체의 상태는 n개 변수가 가질 수 있는 값의 전체 조합이다. A라는 객체 내부에 다른 객체 B를 가리키는 변수를 사용하고 있다면, .. 2017. 4. 18.
우크라이나 (크림반도) 사태 정리. 우크라이나 사태 정리. 분쟁의 발단 = 이해관계 분쟁의 발단 - 크림 반도 #우크라이나는 원래 구소련의 행정구역 #1954년, 우크라이나 출신 소련의 간부가 크림반도를 우크라이나에게 선물 #소련이 붕괴하며 우크라이나는 독립 선언.이때 크림반도를 포함하여 독립. #러시아는 원래 내 땅이었으니 돌려달라고 요청.우크라이나는 지금은 내 땅이니 안 준다고 반박.크림반도는 크림자치공화국인데, 독립하고 싶어함. 분쟁의 발단 - 민족간 다툼 #우크라이나는 크게 서부와 동부로 나뉘어 있음. #서부는 대부분 우크라이나인, 우크라이나어 사용, 친유럽 성향동부는 대부분 러시아인, 러이사어 사용, 친러시아 성향. #우크라이나 독립 이후 동부 출신이 집권.즉 지속적으로 친러시아 정부임. #2004년 대선.동부인이 대통령이 되었으.. 2015. 12. 30.
반응형