ReliableSessionBindingElement.MaxRetryCount 屬性

定義

取得或設定訊息在可靠工作階段期間嘗試傳輸的最大次數。

public:
 property int MaxRetryCount { int get(); void set(int value); };
public int MaxRetryCount { get; set; }
member this.MaxRetryCount : int with get, set
Public Property MaxRetryCount As Integer

屬性值

訊息嘗試重新傳送的最大次數。 最小值為 1;最大值為 Int32.MaxValue;且預設值為 8。

例外狀況

設定的值小於或等於零。

備註

如果收件者已認可該處的訊息傳遞,則訊息會視為要傳輸的訊息。

如果在特定一段時間內沒有收到已傳輸之訊息的認可,則基礎結構會自動重新傳輸該訊息。 基礎結構最多會嘗試傳送訊息 MaxRetryCount 次。 在到達此限制之前未收到認可會被視為嚴重的通訊失敗,並會引起通道錯誤事件。

基礎結構會使用指數倒退演算法,根據計算出來的平均來回時間決定何時重新傳輸。 初始重試時間的計算根據是所測量之建立工作階段的來回時間。 重新傳輸演算法會讓延遲時間隨著每次嘗試而加倍,造成第一次重新傳輸嘗試到最後一次重新傳輸嘗試之間會經過約 8.5 分鐘。 第一次嘗試重新傳輸的時間會根據計算出來的來回時間調整,這些嘗試所花費的時間也會因此而有所不同。 如此便可讓重新傳輸時間透過動態的方式適應多變的網路狀況。

適用於