이 문서는 기계 번역을 이용하여 번역되었습니다. 문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

Socket.BeginReceive 메서드 (IList<ArraySegment<Byte>>, SocketFlags, SocketError, AsyncCallback, Object)

 

연결된 Socket에서 데이터를 비동기적으로 받기 시작합니다.

네임스페이스:   System.Net.Sockets
어셈블리:  System.dll의 System

[HostProtectionAttribute(SecurityAction.LinkDemand, ExternalThreading = true)]
public IAsyncResult BeginReceive(
	IList<ArraySegment<byte>> buffers,
	SocketFlags socketFlags,
	out SocketError errorCode,
	AsyncCallback callback,
	object state
)

매개 변수

buffers

받는 데이터에 대한 저장소 위치인 Byte 형식의 배열입니다.

socketFlags

SocketFlags 값의 비트 조합입니다.

errorCode

소켓 오류를 저장하는 SocketError 개체입니다.

callback

작업이 완료되었을 때 호출할 메서드를 참조하는 AsyncCallback 대리자입니다.

state

수신 작업에 대한 정보가 들어 있는 사용자 정의 개체입니다.이 개체는 작업이 완료되면 EndReceive 대리자에게 전달됩니다.

반환 값

Type: System.IAsyncResult

비동기 읽기를 참조하는 IAsyncResult입니다.

Exception Condition
ArgumentNullException

buffernull입니다.

SocketException

소켓에 액세스하려고 시도하는 동안 오류가 발생한 경우자세한 내용은 설명 부분을 참조하십시오.

ObjectDisposedException

Socket이 닫힌 경우

비동기 BeginReceive 작업은 EndReceive 메서드를 호출하여 완료해야 합니다.일반적으로 이 메서드는 callback 대리자에 의해 호출됩니다.

이 메서드는 작업이 완료될 때까지 차단되지 않습니다.작업이 완료될 때까지 차단하려면 Receive 메서드 오버로드 중 하나를 사용합니다.

보류 중인 BeginReceive을 취소하려면 Close 메서드를 호출합니다.

비동기 프로그래밍 모델 사용에 대한 자세한 내용은 동기 메서드를 비동기 방식으로 호출을 참조하십시오.

System_CAPS_note참고

SocketException이 발생하면 SocketException.ErrorCode 속성을 사용하여 해당 오류 코드를 가져옵니다.이 코드를 가져온 다음 MSDN Library의 Windows 소켓 버전 2 API 오류 코드 설명서에서 오류에 대한 자세한 설명을 참조하십시오.

System_CAPS_note참고

지정한 스레드가 종료되면 해당 스레드에서 시작한 I/O가 모두 취소됩니다.보류 중인 비동기 작업은 해당 작업이 완료되기 전에 스레드가 종료될 경우 실패할 수 있습니다.

System_CAPS_note참고

state는 사용자 정의 클래스를 인스턴스화한 것입니다.

System_CAPS_note참고

응용 프로그램에 네트워크 추적을 사용하도록 설정하면 이 멤버에서 추적 정보를 출력합니다.자세한 내용은 .NET Framework의 네트워크 추적을 참조하십시오.

System_CAPS_note참고

실행 컨텍스트(보안 컨텍스트, 가장된 사용자 및 호출 컨텍스트)는 비동기 Socket 메서드를 위해 캐시됩니다.특정 비동기 Socket 메서드, 특정 Socket 인스턴스 및 특정 콜백과 같은 특정 컨텍스트를 처음 사용한 후 나중에 다시 사용하면 성능이 향상됩니다.

.NET Framework
2.0 이후에 사용 가능
맨 위로 이동
표시: