MarshalByRefObject의 주요 용도는 무엇입니까?
MarshalByRefObject의 목적은 무엇입니까?
원격; 즉, 객체를 직렬화하고 전송하는 대신 AppDomains 또는 시스템간에 객체가 한쪽 끝에 있고 다른 쪽 끝에 프록시가 만들어집니다. 프록시에 대한 모든 메서드 호출이 차단되고 호출 이 RPC wiki , msdn 으로 전송되어 메서드가 다른 컴퓨터에서 실행되도록합니다 (일반적으로 인수 및 반환 값 직렬화).
참고 : 이로 인해 예기치 않게 "수다스러운"인터페이스가 발생할 수 있습니다. 객체 / 프록시 / RPC 접근 방식은 이제 명시적인 서비스 경계 가있는 접근 방식보다 덜 선호됩니다 . Microsoft는 이제 원격 대신 WCF wiki , msdn을 권장 합니다.
의 또 다른 중요한 용도는 MarshalByRefObject
원격 싱크 체인을 통해 AOP를 구현 하는 것입니다 .
당신은에서 파생 것을 객체가있는 경우 ContextBoundObject
(자체에서 파생 MarshalByRefObject
) 같은 응용 프로그램 도메인 내에서 별도의 컨텍스트에서 인스턴스화와 객체 간의 통신을 자동으로 Remoting에 프록시 시스템을 통해 갈 수 있습니다 - 당신은 리모팅 sink-에 사용자 지정 싱크를 연결 할 수 있도록 체인.
이를 통해 궁극적으로 객체에 대한 메서드 호출을 '장식'하고 로깅 및 보안 등과 같은 교차 절단 서비스를 구현할 수 있습니다.
기본 용도는 두 appdomain 사이의 개체 액세스를 지원하는 것이며 이러한 appdomain은 원격을 통해 동일한 컴퓨터 또는 다른 컴퓨터에있을 수 있습니다.
호출자 응용 프로그램의 응용 프로그램 도메인 외부에있는 모든 개체는 원격 개체로 간주되어야합니다. MarshalByRefObject 클래스에서 파생되어야하는 원격 개체입니다. 모든 개체는 MarshalByRefObject에서 파생하여 원격 개체로 변경할 수 있습니다. MarshalByRefObject에서 상속하지 않는 개체를 비 원격 개체라고합니다.
참고 URL : https://stackoverflow.com/questions/4295894/what-is-the-major-use-of-marshalbyrefobject
'code' 카테고리의 다른 글
Kotlin 보조 생성자 (0) | 2020.09.12 |
---|---|
Java NIO : IOException : Broken pipe는 무엇을 의미합니까? (0) | 2020.09.12 |
Android 앱 메모리 부족 문제-모든 것을 시도했지만 여전히 손실 (0) | 2020.09.12 |
Makefile에서 괄호 $ ()와 중괄호 $ {} 구문의 차이점은 무엇입니까? (0) | 2020.09.12 |
입력 유형 버튼-레이블 대 값 (0) | 2020.09.12 |