|
JavaTM Platform Standard Ed. 6 |
|||||||||
전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
public interface ActiveEvent
자기 자신을 발송 할 수 있는 이벤트를 위한 인터페이스입니다. 이 인터페이스를 구현하는 것으로써, 이벤트는 이벤트 큐에 넣어져EventDispatchThread
를 사용해 이벤트가 발송 될 때 dispatch()
메소드가 불려 갑니다.
이 기구는, 데드락의 발생을 피하기 위해서(때문에) 매우 유효합니다. thread가 Critical Section으로 실행되고 있는 경우, 즉 thread가 1 개 또는 복수의 모니터에 들어가 있는 경우, 다른 동기 코드를 호출하면(자) 데드락이 발생하는 일이 있습니다. 데드락의 발생을 피하기 (위해)때문에,ActiveEvent
를 작성해 2 번째의 섹션의 코드를 나중에 실행시킬 수가 있습니다. 모니터로 경합이 있는 경우, 최초의 thread가 종료해 모니터로부터 빠질 때까지, 2 번째의 thread는 블록 됩니다.
시큐리티상의 이유로부터,ActiveEvent
를 사용해, 위기 thread로부터 신뢰할 수 없는 코드가 불려 가는 것을 피하지 않으면 안 되는 경우가 있습니다. 예를 들어, 이 기능을 피어의 구현으로 사용하면(자), 시스템 thread로부터의 사용자 코드의 호출을 피할 수가 있습니다. 이것에 의해, 데드락이나 서비스 방해 공격을 회피할 수 있습니다.
메소드의 개요 | |
---|---|
void |
dispatch ()
이벤트를 타겟인 이벤트 소스의 청취자에게 보내든가, 혹은 이 이벤트로 지정되고 있는 처리를 실행합니다. |
메소드의 상세 |
---|
void dispatch()
|
JavaTM Platform Standard Ed. 6 |
|||||||||
전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.