PeerNameResolver.ResolveAsync 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
這些方法會在呼叫端對等電腦已知的所有 Cloud 中,針對指定的 PeerName 開始進行非同步解析作業。
多載
ResolveAsync(PeerName, Object) |
在所有雲端中針對呼叫對等已知的指定 PeerName 開始非同步對等名稱解析作業。 |
ResolveAsync(PeerName, Int32, Object) |
在所有雲端中針對呼叫對等已知的指定 PeerName 開始非同步對等名稱解析作業,只會傳回對等名稱的 |
ResolveAsync(PeerName, Cloud, Object) | |
ResolveAsync(PeerName, Cloud, Int32, Object) |
在指定的 Cloud 中針對指定 PeerName,開始非同步對等名稱解析作業。 解析作業針對指定的對等名稱將不會解析超過 |
備註
對於每個 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
包含有關對等名稱解析作業狀態資訊的使用者定義物件。
例外狀況
peerName
和 userState
參數之一或二者設為 null
。
備註
這個方法會以異步方式將對等名稱與雲端產生關聯。 系統會查詢所有雲端。PeerName 它會引發 ResolveCompleted 事件,以回呼 方法 OnResolveCompleted 。 或者,它會引發 ResolveProgressChanged 事件,以回呼 方法 OnResolveProgressChanged 。
如果無法解析對等名稱, PeerToPeerException 則會擲回 。
對於不安全的對等名稱,相同的名稱可以註冊 (,並與相同雲端內不同對等) 的不同端點相關聯。
PeerNameResolver呼叫 方法類似於針對 中的每個PeerNameRecordCollection對等名稱記錄呼叫 ResolveAsync 方法。 請注意,在個別對等名稱記錄上使用 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
對等名稱可取得的記錄數目上限。
- userState
- Object
使用者定義物件,包含解析作業的相關資訊。
例外狀況
peerName
和 userState
參數之一或二者設為 null
。
maxRecords
參數小於或等於零。
備註
這個方法會以異步方式將對等名稱與雲端產生關聯。 系統會查詢所有雲端。PeerName 對於不安全的對等名稱,相同的名稱可以註冊 (,並與相同雲端內不同對等) 的不同端點相關聯。 如果無法解析對等名稱或 為 null
, 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)
參數
例外狀況
peerName
和 userState
參數之一或二者設為 null
。
備註
這個方法會 ResolveCompleted 引發 事件,這個事件會呼叫回 OnResolveCompleted 方法。 或者,它會引發 ResolveProgressChanged 事件,以回呼 方法 OnResolveProgressChanged 。
對於不安全的對等名稱,相同的名稱可以註冊 (,並與相同雲端內不同對等) 的不同端點相關聯。
Cloud如果 參數為 null
,則會使用Available快捷方式解析名稱,這會初始化、 Scope和 ScopeId 屬性的Name預設值。
對於每個 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
要在其中解析 peerName
的 cloud
。
- maxRecords
- Int32
針對 peerName
從 cloud
取得記錄的最大數目。
- userState
- Object
包含對等名稱解析作業資訊的使用者定義物件。
- 屬性
例外狀況
peerName
和 userState
參數之一或二者設為 null
。
一或多個提供的參數無效。
至少需要一個事件處理常式才能成功完成此作業。
maxRecords
參數小於或等於零。
備註
對於不安全的對等名稱,相同的名稱可以註冊 (,並與相同雲端內不同對等) 的不同端點相關聯。
這個方法會 ResolveCompleted 引發 事件,這個事件會呼叫回 OnResolveCompleted 方法。 或者,它會引發 ResolveProgressChanged 事件,以回呼 方法 OnResolveProgressChanged 。
Cloud如果 參數為 null
,則會使用Available快捷方式解析名稱,這會初始化、 Scope和 ScopeId 屬性的Name預設值。
對於每個 ResolveAsync 方法,都有相等 Resolve 的方法。 其參數清單完全相同,不同之處在於 ResolveAsync 方法包含異步事件處理的系統令牌,而 Resolve 方法適用於同步處理。
對等解析程序物件的所有異步參考都會與唯一標識符標記 Object協調。 此 userState
令牌或訊息標識碼可讓操作系統在訊息放在消息佇列之後,將訊息傳遞至單一接收進程。
ResolveCompleted如果解析作業發生錯誤或取消,就會引發 事件。