BUG: 인해 예기치 않은 예외가 발생할 수 많은 양의 데이터 .NET Remoting 호출 전달

중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

322975
이 문서가 보관되었습니다. "그대로" 제공되었으며, 업데이트가 되지 않을 것입니다.
현상
.NET Remoting을 사용하여 클라이언트 및 서버 응용 프로그램 간의 메서드 매개 변수로 전달될 serialize할 수 있는 모든 형식의 인스턴스를 허용할 수 있습니다. 그러나 전달된 형식 인스턴스를 매우 큰 (수십 메가바이트) 경우 Remoting 많은 양의 가상 메모리를 소모하는 클라이언트와 예기치 않은 예외를 생성합니다. 예외 OutOfMemoryException 예외 또는 SocketException 예외가 될 수 있습니다. 또한 작업 관리자에서 볼 수 있듯이 커밋 충전 매우 높습니다.
원인
이 버그로 인해 .NET Remoting 시스템에서 있습니다.
해결 방법
이 문제를 해결하려면 적은 양의 데이터 사용하여 각 원격 호출 전달하십시오. Stream 개체를 메서드 매개 변수로 전달할 수도 있습니다. 스트림 개체는 MarshalByRefObject을 상속합니다. Stream 개체를 작은 청크 데이터를 검색할 수 있습니다.
현재 상태
Microsoft는 Microsoft 버그가 있음을 확인했습니다 이 문서의 시작 부분에 나열된 제품에.
추가 정보
아래 클래스 원격 호스트에서 호스팅되는 원격 클라이언트에서 메서드를 호출할 때 문제가 발생합니다. 다음 코드 단편은 문제를 보여 줍니다.

	public class MBRClass : MarshalByRefObject	{		public byte[] GetBigByteArray ()		{			byte[] byteArray = new byte[60000000] ;			return byteArray ;		}	}				

경고: 이 문서는 자동으로 번역되었습니다.

속성

문서 ID: 322975 - 마지막 검토: 02/27/2014 02:08:02 - 수정: 4.4

Microsoft .NET Framework 1.0, Microsoft .NET Framework 1.0 서비스 팩 1, Microsoft .NET Framework 1.0 서비스 팩 2, Microsoft .NET Framework 1.1, Microsoft .NET Framework 1.1 Service Pack 1

  • kbnosurvey kbarchive kbmt kbbug kbremoting KB322975 KbMtko
피드백