CloudQueue.Clear Method

Storage Client Library NET API

[This topic is part of the Microsoft Azure Storage Client Library 1.7, which has been deprecated. See Storage Client Library for the latest version.]

Clears all messages from the queue.

Namespace: Microsoft.WindowsAzure.StorageClient
Assembly: Microsoft.WindowsAzure.StorageClient (in Microsoft.WindowsAzure.StorageClient.dll)

Usage

Visual Basic
Dim instance As CloudQueue

instance.Clear

Syntax

Visual Basic
Public Sub Clear
C#
public void Clear ()
C++
public:
void Clear ()
J#
JScript

Example

The following example gets a reference to a queue, clears any existing messages, and adds some new messages.

C# Copy Code
static void CreateQueueAndAddMessages(Uri queueEndpoint, string accountName, string accountKey)
{
    //Create service client for credentialed access to the Queue service.
    CloudQueueClient queueClient = new CloudQueueClient(queueEndpoint,
        new StorageCredentialsAccountAndKey(accountName, accountKey));

    //Get a reference to a queue in this storage account.
    CloudQueue queue = queueClient.GetQueueReference("myqueue");
    //Create the queue if it does not already exist.
    queue.CreateIfNotExist();

    //Clear any existing messages from the queue.
    queue.Clear();

    //Create some new messages.
    CloudQueueMessage msg1 = new CloudQueueMessage("message1");
    CloudQueueMessage msg2 = new CloudQueueMessage("message2");
    CloudQueueMessage msg3 = new CloudQueueMessage("message3");
            
    //Add the messages to the queue.
    queue.AddMessage(msg1);
    queue.AddMessage(msg2);
    //Add the message with a time-to-live of one hour.
    queue.AddMessage(msg3, new TimeSpan(1, 0, 0));

   //Get one message from the queue.
   CloudQueueMessage msgRead = queue.GetMessage();

   //If the message is not null, display it.
   if (msgRead != null)
   {
      Console.WriteLine(msgRead.AsString);
      Console.WriteLine();

      //After reading the message, the client should delete it.
      queue.DeleteMessage(msgRead);
   }
   else
   {
      Console.WriteLine("The queue contains no messages.");
      Console.WriteLine();
   }
                
   //Get up to 10 messages from the queue.
   foreach (var msg in queue.GetMessages(10))
   {
      Console.WriteLine(msg.AsString);
      queue.DeleteMessage(msg);
   }
}

Remarks

The Clear method clears all messages from the queue.

If a queue contains a large number of messages, the operation may time out before all messages have been deleted. If the operation times out, the client should retry the operation until it succeeds, to ensure that all messages have been deleted.


Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

Windows Vista, Windows 7, Windows Server 2008, Windows 8.1, Windows Server 2012 R2, Windows 8 and Windows Server 2012

Change History

See Also