CommunicationObject 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
为系统中所有面向通信的对象(包括通道、侦听器以及通道和侦听器工厂)公用的基本状态机提供通用的基实现。
public ref class CommunicationObject abstract : System::ServiceModel::ICommunicationObject
public abstract class CommunicationObject : System.ServiceModel.ICommunicationObject
type CommunicationObject = class
interface ICommunicationObject
Public MustInherit Class CommunicationObject
Implements ICommunicationObject
- 继承
-
CommunicationObject
- 派生
- 实现
注解
类 CommunicationObject 为 Windows Communication Foundation (WCF) 中的所有通信对象实现 ICommunicationObject 接口。 此方法实现可处理参数验证,引发通知状态发生转换的事件,提供对其他处理和此状态转换进行关联的方法,并确保此状态更改得到协调。
构造函数
CommunicationObject() |
初始化 CommunicationObject 类的新实例。 |
CommunicationObject(Object) |
使用相互排斥锁初始化 CommunicationObject 类的新实例可保护指定的状态转换。 |
属性
DefaultCloseTimeout |
在派生类中重写时,获取为完成关闭操作提供的默认时间间隔。 |
DefaultOpenTimeout |
在派生类中重写时,获取为完成打开操作提供的默认时间间隔。 |
IsDisposed |
获取一个值,该值指示通信对象是否已被释放。 |
State |
获取指示通信对象当前状态的值。 |
ThisLock |
获取在状态转换过程中保护类实例的相互排斥锁。 |
方法
Abort() |
使通信对象立即从其当前状态转换到正在关闭状态。 |
BeginClose(AsyncCallback, Object) |
开始一个异步操作以关闭通信对象。 |
BeginClose(TimeSpan, AsyncCallback, Object) |
开始一个异步操作以在指定超时内关闭通信对象。 |
BeginOpen(AsyncCallback, Object) |
开始一个异步操作以打开通信对象。 |
BeginOpen(TimeSpan, AsyncCallback, Object) |
开始一个异步操作以在指定时间间隔内打开通信对象。 |
Close() |
使通信对象从其当前状态转换到关闭状态。 |
Close(TimeSpan) |
使通信对象在指定时间间隔内从当前状态转换到关闭状态。 |
EndClose(IAsyncResult) |
完成一个异步操作以关闭通信对象。 |
EndOpen(IAsyncResult) |
完成一个异步操作以打开通信对象。 |
Equals(Object) |
确定指定对象是否等于当前对象。 (继承自 Object) |
Fault() |
使通信对象从其当前状态转换到出错状态。 |
GetCommunicationObjectType() |
获取通信对象的类型。 |
GetHashCode() |
作为默认哈希函数。 (继承自 Object) |
GetType() |
获取当前实例的 Type。 (继承自 Object) |
MemberwiseClone() |
创建当前 Object 的浅表副本。 (继承自 Object) |
OnAbort() |
在调用了一个同步中止操作,从而引起通信对象转换为关闭状态的情况下,该方法插入对通信对象的处理。 |
OnBeginClose(TimeSpan, AsyncCallback, Object) |
在调用了异步关闭操作,从而引起通信对象转换为正在关闭状态的情况下,该方法将插入处理。 |
OnBeginOpen(TimeSpan, AsyncCallback, Object) |
在调用了异步打开操作,从而引起通信对象转换为正在打开状态的情况下,该方法将插入处理。 |
OnClose(TimeSpan) |
在调用了一个同步关闭操作,从而引起通信对象转换为正在关闭状态的情况下,该方法插入对通信对象的处理。 |
OnClosed() |
在通信对象转换到正在关闭状态的过程中被调用。 |
OnClosing() |
在通信对象转换到正在关闭状态的过程中被调用。 |
OnEndClose(IAsyncResult) |
在关闭通信对象时完成一个异步操作。 |
OnEndOpen(IAsyncResult) |
在打开通信对象时完成一个异步操作。 |
OnFaulted() |
在调用了同步错误操作,从而引起通信对象转换为出错状态的情况下,该方法插入对通信对象的处理。 |
OnOpen(TimeSpan) |
在通信对象转换为打开状态(此过程必须在指定时间间隔内完成)后插入对通信对象的处理。 |
OnOpened() |
在通信对象转换到已打开状态的过程中被调用。 |
OnOpening() |
在通信对象转换到正在打开状态的过程中被调用。 |
Open() |
使通信对象从已创建状态转换到已打开状态。 |
Open(TimeSpan) |
使通信对象在指定时间间隔内从已创建状态转换到已打开状态。 |
ThrowIfDisposed() |
如果通信对象已释放,则引发异常。 |
ThrowIfDisposedOrImmutable() | |
ThrowIfDisposedOrNotOpen() |
如果通信对象未处于 Opened 状态,则引发异常。 |
ToString() |
返回表示当前对象的字符串。 (继承自 Object) |
事件
Closed |
当通信对象转换到已关闭状态时发生。 |
Closing |
当通信对象转换到正在关闭状态时发生。 |
Faulted |
在通信对象转换到出错状态时发生。 |
Opened |
当通信对象转换到已打开状态时发生。 |
Opening |
当通信对象转换到正在打开状态时发生。 |