Frees all resources allocated by the queue.
[Visual Basic] Overridable Public Sub Close() [C#] public virtual void Close(); [C++] public: virtual void Close(); [JScript] public function Close();
Call Close on all queues before deleting the backend resource. Otherwise, messages sent to the queue could throw exceptions or appear in the Deadletter queue.
The following example closes and deletes a Message Queuing backend resource. It assumes that a queue path has been passed in from the calling application, and that the path refers to a queue on the local computer.
As recommended, the queue is closed before there is an attempt to delete it. This ensures that further messages will not be sent to it before the backend resource is removed from Message Queuing.
This procedure assumes you can delete queues from the local machine.
[Visual Basic]
Private Sub TerminateQueue(ByVal queuePath As String) 'Define and instantiate a new MessageQueue. Dim MessageQueue1 As MessageQueue MessageQueue1 = New MessageQueue(queuePath) 'Close the message queue so it stops receiving messages. MessageQueue1.Close() 'Delete the queue. This is a static method. MessageQueue.Delete(queuePath) End Sub
MessageQueue Class | MessageQueue Members | System.Messaging Namespace | Delete