PeerNameResolver.ResolveAsync 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
這些方法會在所有呼叫對端已知的雲中,開始對指定的 PeerName 非同步解析操作。
多載
| 名稱 | Description |
|---|---|
| ResolveAsync(PeerName, Object) |
開始對所有呼叫對端已知的雲中指定的 PeerName 節點進行非同步對等名稱解析操作。 |
| ResolveAsync(PeerName, Int32, Object) |
開始對呼叫對端已知的所有雲中指定的 PeerName 節點進行非同步對等名稱解析操作,回傳的僅 |
| ResolveAsync(PeerName, Cloud, Object) | |
| ResolveAsync(PeerName, Cloud, Int32, Object) |
開始對指定PeerName條件中的 進行Cloud非同步對等名稱解析操作。 解析操作只會解析 |
備註
每種 Resolve 方法都有一種等效 ResolveAsync 方法,當需要非同步處理時會使用。 它們在傳遞的參數上完全相同,唯一不同的是 ResolveAsync 在其參數列表中包含系統標記以用於事件處理。
若 Resolve 方法與 ResolveAsync 方法之間發生參數不匹配,且 Cloud 未提供參數,該方法會利用 Available 捷徑填入雲端參數。
ResolveAsync(PeerName, Object)
開始對所有呼叫對端已知的雲中指定的 PeerName 節點進行非同步對等名稱解析操作。
public:
void ResolveAsync(System::Net::PeerToPeer::PeerName ^ peerName, System::Object ^ userState);
public void ResolveAsync(System.Net.PeerToPeer.PeerName peerName, object userState);
member this.ResolveAsync : System.Net.PeerToPeer.PeerName * obj -> unit
Public Sub ResolveAsync (peerName As PeerName, userState As Object)
參數
- userState
- Object
一個由使用者定義的物件,包含關於對等名稱解析操作的狀態資訊。
例外狀況
其中一個或兩個peerNameuserState參數被設定為 null。
備註
此方法非同步地將對等名稱與雲端關聯。 所有雲都查詢 。PeerName 它會提升事件, ResolveCompleted 並呼喚回方法本身 OnResolveCompleted 。 或者,它會 ResolveProgressChanged 觸發事件,並呼喚回方法本身 OnResolveProgressChanged 。
若無法解析對等名稱,則拋出 an PeerToPeerException 。
對於不安全的對等節點名稱,同一名稱可以被同一雲端內的不同節點註冊(並關聯到不同的端點)。
呼叫該PeerNameResolver方法類似於對每個節點名稱記錄ResolveAsync呼叫該PeerNameRecordCollection方法。 請注意,對單一節點名稱記錄使用Resolve方法並不會導致解析多個節點名稱的行為失效。
每種 ResolveAsync 方法都有等價 Resolve 的方法。 它們的參數列表相同,但 ResolveAsync 方法包含用於非同步事件處理的系統令牌,而 Resolve 方法則用於同步處理。
所有對解析器物件的非同步引用皆以唯一識別碼標記協調。 此 userState 標記或訊息識別碼允許作業系統在訊息放入訊息佇列後,將訊息傳送給單一接收程序。
ResolveCompleted若解析操作錯誤完成或被取消,事件將被觸發。
適用於
ResolveAsync(PeerName, Int32, Object)
開始對呼叫對端已知的所有雲中指定的 PeerName 節點進行非同步對等名稱解析操作,回傳的僅 maxRecords 為該節點名稱的條目。
public:
void ResolveAsync(System::Net::PeerToPeer::PeerName ^ peerName, int maxRecords, System::Object ^ userState);
public void ResolveAsync(System.Net.PeerToPeer.PeerName peerName, int maxRecords, object userState);
member this.ResolveAsync : System.Net.PeerToPeer.PeerName * int * obj -> unit
Public Sub ResolveAsync (peerName As PeerName, maxRecords As Integer, userState As Object)
參數
- maxRecords
- Int32
為 Peer Name 可取得的最大紀錄數。
- userState
- Object
一個由使用者定義的物件,包含關於解析操作的資訊。
例外狀況
其中一個或兩個peerNameuserState參數被設定為 null。
maxRecords參數小於或等於零。
備註
此方法非同步地將對等名稱與雲端關聯。 所有雲都查詢 。PeerName 對於不安全的對等節點名稱,同一名稱可以被同一雲端內的不同節點註冊(並關聯到不同的端點)。 若節點名稱無法解析或為 , null則拋出 an PeerToPeerException 。
此方法會引發 ResolveCompleted 事件,事件會回溯到該 OnResolveCompleted 方法。 或者,它會 ResolveProgressChanged 觸發事件,並呼喚回方法本身 OnResolveProgressChanged 。
每種 ResolveAsync 方法都有等價 Resolve 的方法。 它們的參數列表相同,但 ResolveAsync 方法包含用於非同步事件處理的系統令牌,而 Resolve 方法則用於同步處理。
所有對解析器物件的非同步引用皆以唯一識別碼標記 Object協調。 此 userState 標記或訊息識別碼允許作業系統在訊息放入訊息佇列後,將訊息傳送給單一接收程序。
ResolveCompleted若解析操作錯誤完成或被取消,事件將被觸發。
適用於
ResolveAsync(PeerName, Cloud, Object)
public:
void ResolveAsync(System::Net::PeerToPeer::PeerName ^ peerName, System::Net::PeerToPeer::Cloud ^ cloud, System::Object ^ userState);
public void ResolveAsync(System.Net.PeerToPeer.PeerName peerName, System.Net.PeerToPeer.Cloud cloud, object userState);
member this.ResolveAsync : System.Net.PeerToPeer.PeerName * System.Net.PeerToPeer.Cloud * obj -> unit
Public Sub ResolveAsync (peerName As PeerName, cloud As Cloud, userState As Object)
參數
例外狀況
其中一個或兩個peerNameuserState參數被設定為 null。
備註
此方法會引發 ResolveCompleted 事件,事件會回溯到該 OnResolveCompleted 方法。 或者,它會 ResolveProgressChanged 觸發事件,並呼喚回方法本身 OnResolveProgressChanged 。
對於不安全的對等節點名稱,同一名稱可以被同一雲端內的不同節點註冊(並關聯到不同的端點)。
若Cloud參數為 null,則透過Available捷徑解析名稱,該捷徑初始化 、 Name及Scope屬性的預設值ScopeId。
每種 ResolveAsync 方法都有等價 Resolve 的方法。 它們的參數列表相同,但 ResolveAsync 方法包含用於非同步事件處理的系統令牌,而 Resolve 方法則用於同步處理。
所有對解析器物件的非同步引用皆以唯一識別碼標記協調。 此 userState 標記或訊息識別碼允許作業系統在訊息放入訊息佇列後,將訊息傳送給單一接收程序。
ResolveCompleted若解析操作錯誤完成或被取消,事件將被觸發。
適用於
ResolveAsync(PeerName, Cloud, Int32, Object)
public:
void ResolveAsync(System::Net::PeerToPeer::PeerName ^ peerName, System::Net::PeerToPeer::Cloud ^ cloud, int maxRecords, System::Object ^ userState);
[System.Security.SecurityCritical]
public void ResolveAsync(System.Net.PeerToPeer.PeerName peerName, System.Net.PeerToPeer.Cloud cloud, int maxRecords, object userState);
[<System.Security.SecurityCritical>]
member this.ResolveAsync : System.Net.PeerToPeer.PeerName * System.Net.PeerToPeer.Cloud * int * obj -> unit
Public Sub ResolveAsync (peerName As PeerName, cloud As Cloud, maxRecords As Integer, userState As Object)
參數
- peerName
- PeerName
那個 peerName 要解決的。
- cloud
- Cloud
該 cloud 中 要解決 peerName。
- maxRecords
- Int32
對於 cloud,可從中取得peerName的最大記錄數。
- userState
- Object
一個由使用者定義的物件,包含關於對等名稱解析操作的資訊。
- 屬性
例外狀況
其中一個或兩個peerNameuserState參數被設定為 null。
一個或多個提供的參數無效。
成功完成此操作至少需要一個事件處理程序。
maxRecords參數小於或等於零。
備註
對於不安全的對等節點名稱,同一名稱可以被同一雲端內的不同節點註冊(並關聯到不同的端點)。
此方法會引發 ResolveCompleted 事件,事件會回溯到該 OnResolveCompleted 方法。 或者,它會 ResolveProgressChanged 觸發事件,並呼喚回方法本身 OnResolveProgressChanged 。
若Cloud參數為 null,則透過Available捷徑解析名稱,該捷徑初始化 、 Name及Scope屬性的預設值ScopeId。
每種 ResolveAsync 方法都有等價 Resolve 的方法。 它們的參數列表相同,但 ResolveAsync 方法包含用於非同步事件處理的系統令牌,而 Resolve 方法則用於同步處理。
所有對對等解析器物件的非同步參照皆以唯一識別碼標記 Object協調。 此 userState 標記或訊息識別碼允許作業系統在訊息放入訊息佇列後,將訊息傳送給單一接收程序。
ResolveCompleted若解析操作錯誤完成或被取消,事件將被觸發。