PeerNameResolver.ResolveAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
这些方法在调用对等方已知的所有群中开始指定 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
从 cloud
获取的 peerName
的最大数量的记录数。
- userState
- Object
一个用户定义的对象,其中包含对等名称解析操作的相关信息。
- 属性
例外
将 peerName
和/或 userState
参数设置为 null
。
提供的一个或多个参数均无效。
要成功完成此操作至少需要一个事件处理程序。
maxRecords
参数小于或等于零。
注解
对于不安全的对等名称,同一名称可以注册 (,并与同一云中不同对等方) 的不同终结点相关联。
此方法引发 ResolveCompleted 事件,该事件调用回 OnResolveCompleted 方法。 或者,它会引发 ResolveProgressChanged 事件,该事件调用回 OnResolveProgressChanged 方法。
Cloud如果 参数为 null
,则使用 Available 快捷方式解析名称,该快捷方式初始化 、 Scope和 ScopeId 属性的Name默认值。
对于每个 ResolveAsync 方法,都有一个等效 Resolve 的方法。 它们的参数列表是相同的,只是 ResolveAsync 方法包含用于异步事件处理的系统令牌,而 Resolve 方法用于同步处理。
对对等解析程序对象的所有异步引用都与唯一标识符标记 Object进行协调。 此 userState
令牌或消息标识符允许操作系统在消息放入消息队列后将消息传递到单个接收进程。
ResolveCompleted如果解析操作在错误中完成或被取消,将引发 该事件。