共用方式為


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 嘗試連線且在網路上偵測到 Proxy 時,它會嘗試直接連線到指定的 IP 位址,以及 HTTP CONNECT 要求 (,以平行方式透過 Proxy 連線) 。 要成功的第一個連接是 StreamSocket 物件所使用的連接。 雖然這在大部分情況下都能正常運作,但兩個連線嘗試都成功時,會導致某些伺服器發生問題。 如果您的應用程式使用 StreamSocket 連線到平行連接方法造成伺服器上的問題的伺服器,您應該在連線之前將 SerializeConnectionAttempts 設定為 true。 這可確保在任何指定時間最多都會進行一個 TCP 連線嘗試,而且只會使用單一連線。

您的程式碼必須先設定此屬性,才能呼叫 ConnectAsync 以嘗試連線。 呼叫 ConnectAsync 之後變更這個屬性值會導致擲回例外狀況。

請注意,序列化連接邏輯可能會建立連接需要較長的時間。

適用於