다음을 통해 공유


StreamSocketControl.SerializeConnectionAttempts 속성

정의

여러 연결 시도가 이루어지는 경우 시도가 병렬로 또는 직렬로 이루어지는지 여부를 나타내는 값입니다.

public:
 property bool SerializeConnectionAttempts { bool get(); void set(bool value); };
bool SerializeConnectionAttempts();

void SerializeConnectionAttempts(bool value);
public bool SerializeConnectionAttempts { get; set; }
var boolean = streamSocketControl.serializeConnectionAttempts;
streamSocketControl.serializeConnectionAttempts = boolean;
Public Property SerializeConnectionAttempts As Boolean

속성 값

Boolean

bool

true이면 이 StreamSocket에서 한 번에 최대 하나의 연결 시도가 활성화됩니다. 기본값은 false입니다.

설명

특정 상황에서 Windows 런타임은 여러 메서드를 병렬로 사용하여 연결을 설정하려고 시도할 수 있습니다. 예를 들어 StreamSocket 이 연결을 시도하고 네트워크에서 프록시가 검색되면 지정된 IP 주소에 대한 직접 연결과 HTTP CONNECT 요청(프록시를 통해 연결됨)을 동시에 시도합니다. 성공할 첫 번째 연결은 StreamSocket 개체에서 사용되는 연결입니다. 대부분의 경우 잘 작동하지만 두 연결 시도가 모두 성공하는 경우 일부 서버에 문제가 발생합니다. 앱이 StreamSocket 을 사용하여 병렬 연결 방법으로 서버에서 문제를 일으키는 서버에 연결하는 경우 연결하기 전에 SerializeConnectionAttempts를 true로 설정해야 합니다. 이렇게 하면 지정된 시간에 최대 하나의 TCP 연결 시도가 진행 중이며 단일 연결만 사용됩니다.

ConnectAsync를 호출하여 연결을 시도하기 전에 코드에서 이 속성을 설정해야 합니다. ConnectAsync가 호출된 후 이 속성 값을 변경하면 예외가 throw됩니다.

연결 논리를 직렬화하면 연결 설정이 더 오래 걸릴 수 있습니다.

적용 대상