달력

12

« 2024/12 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
2010. 8. 10. 18:53

Thread - 대기와 통지 JAVA이야기2010. 8. 10. 18:53

notifyAll(은 실제로 모든 쓰레드들이 깨어나게 하는가?
그럴수도 있고 아닐 수 도 있다.

왜 모든 쓰레드들이 깨어나기를 원하는가??
대기중인 모든 쓰레드를 깨어나게 함으로써 , 우리는 그 쓰레드 중에서 어떤 것이 ㄷ음에 수행되게 해야 할 지를 결정할 수 도 있도록 프로그램을 설계할 수 있다.
다른 이유는 통지가 다수의 대기중인 스레드들을 만족 시킬 수 있는 경우가 있기 떄문이다. 

I/O를 다루기 위해서 별도의 쓰레드를 시작시키는 것이 자바에서의 일반적인 스레드의 사용.
쓰레딩자체는 단지 우리 프로그램의 세부 구현일 뿐이라고 할 수 있다. 진정하 쓰레딩이랑 어떤 특정 행위를 하는 다른 객체와 같은 관점에 바라보아야 한다.

Assertion value > 0
value > 0 이면 아무일도 일어나지 않는다. value > 0 이 아니라면 java.lang.AssertionError라는 예외를 throw한다.
AssertionError가 던져지면 프로그래머의 기대에 반한 것이므로 assertion은 오류를 발견할 수 있는 조기 단서가 된다.

'JAVA이야기' 카테고리의 다른 글

한정자(Type Qualifiers)  (0) 2010.10.19
Volatile 과 restrict  (0) 2010.09.02
Java Inner Class  (0) 2010.08.10
Thread - 동기화 기법  (0) 2010.08.09
Thread - API  (0) 2010.08.06
:
Posted by НooпeУ


Code Start Code End