ICommunicationObject.Close Method (TimeSpan)

Causes a communication object to transition from its current state into the closed state.

Namespace:  System.ServiceModel
Assembly:  System.ServiceModel (in System.ServiceModel.dll)


Sub Close ( _
    timeout As TimeSpan _
void Close(
    TimeSpan timeout


  • timeout
    Type: System.TimeSpan
    The Timespan that specifies how long the send operation has to complete before timing out.


Exception Condition

Close was called on an object in the Faulted state.


The time-out elapsed before the ICommunicationObject was able to close gracefully.


This method causes an ICommunicationObject to gracefully transition from the Opened state to the Closed state within a specified interval of time. The Close method allows any unfinished work to be completed before returning. (For example, finish sending any buffered messages.)

The ICommunicationObject enters the Closing state and remains in it until the transition to the Closed state is completed.

Close returns after the Closed state is reached.

If the time-out elapses before the ICommunicationObject is able to gracefully close, the ICommunicationObject is aborted.

If Close is called on an ICommunicationObject in the Created, Opening, or Faulted state, the ICommunicationObject is aborted. If Close is called on an ICommunicationObject in the Closing or Closed state, the call returns immediately.

There is also an asynchronous version of the close method that is initiated by calling BeginClose() and completed by calling Close.

Notes to Implementers

The operation must throw a TimeoutException if the specified timeout is exceeded.

Version Information


Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Windows Phone OS 7.0


For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.