Bagikan melalui


MessageQueue Kelas

Definisi

Menyediakan akses ke antrean pada server Antrean Pesan.

public ref class MessageQueue : System::ComponentModel::Component, System::Collections::IEnumerable
[System.ComponentModel.TypeConverter(typeof(System.Messaging.Design.MessageQueueConverter))]
public class MessageQueue : System.ComponentModel.Component, System.Collections.IEnumerable
[System.ComponentModel.TypeConverter(typeof(System.Messaging.Design.MessageQueueConverter))]
[System.Messaging.MessagingDescription("MessageQueueDesc")]
public class MessageQueue : System.ComponentModel.Component, System.Collections.IEnumerable
[<System.ComponentModel.TypeConverter(typeof(System.Messaging.Design.MessageQueueConverter))>]
type MessageQueue = class
    inherit Component
    interface IEnumerable
[<System.ComponentModel.TypeConverter(typeof(System.Messaging.Design.MessageQueueConverter))>]
[<System.Messaging.MessagingDescription("MessageQueueDesc")>]
type MessageQueue = class
    inherit Component
    interface IEnumerable
Public Class MessageQueue
Inherits Component
Implements IEnumerable
Warisan
Atribut
Penerapan

Contoh

Contoh kode berikut membuat objek baru MessageQueue menggunakan berbagai jenis sintaks nama jalur. Dalam setiap kasus, ia mengirim pesan ke antrean yang jalurnya ditentukan dalam konstruktor.

#using <system.dll>
#using <system.messaging.dll>

using namespace System;
using namespace System::Messaging;
ref class MyNewQueue
{
public:

   // References public queues.
   void SendPublic()
   {
      MessageQueue^ myQueue = gcnew MessageQueue( ".\\myQueue" );
      myQueue->Send( "Public queue by path name." );
      return;
   }


   // References private queues.
   void SendPrivate()
   {
      MessageQueue^ myQueue = gcnew MessageQueue( ".\\Private$\\myQueue" );
      myQueue->Send( "Private queue by path name." );
      return;
   }


   // References queues by label.
   void SendByLabel()
   {
      MessageQueue^ myQueue = gcnew MessageQueue( "Label:TheLabel" );
      myQueue->Send( "Queue by label." );
      return;
   }


   // References queues by format name.
   void SendByFormatName()
   {
      MessageQueue^ myQueue = gcnew MessageQueue( "FormatName:Public=5A5F7535-AE9A-41d4 -935C-845C2AFF7112" );
      myQueue->Send( "Queue by format name." );
      return;
   }


   // References computer journal queues.
   void MonitorComputerJournal()
   {
      MessageQueue^ computerJournal = gcnew MessageQueue( ".\\Journal$" );
      while ( true )
      {
         Message^ journalMessage = computerJournal->Receive();
         
         // Process the journal message.
      }
   }


   // References queue journal queues.
   void MonitorQueueJournal()
   {
      MessageQueue^ queueJournal = gcnew MessageQueue( ".\\myQueue\\Journal$" );
      while ( true )
      {
         Message^ journalMessage = queueJournal->Receive();
         
         // Process the journal message.
      }
   }


   // References dead-letter queues.
   void MonitorDeadLetter()
   {
      MessageQueue^ deadLetter = gcnew MessageQueue( ".\\DeadLetter$" );
      while ( true )
      {
         Message^ deadMessage = deadLetter->Receive();
         
         // Process the dead-letter message.
      }
   }


   // References transactional dead-letter queues.
   void MonitorTransactionalDeadLetter()
   {
      MessageQueue^ TxDeadLetter = gcnew MessageQueue( ".\\XactDeadLetter$" );
      while ( true )
      {
         Message^ txDeadLetter = TxDeadLetter->Receive();
         
         // Process the transactional dead-letter message.
      }
   }

};


//*************************************************
// Provides an entry point into the application.
//         
// This example demonstrates several ways to set
// a queue's path.
//*************************************************
int main()
{
   
   // Create a new instance of the class.
   MyNewQueue^ myNewQueue = gcnew MyNewQueue;
   myNewQueue->SendPublic();
   myNewQueue->SendPrivate();
   myNewQueue->SendByLabel();
   myNewQueue->SendByFormatName();
   myNewQueue->MonitorComputerJournal();
   myNewQueue->MonitorQueueJournal();
   myNewQueue->MonitorDeadLetter();
   myNewQueue->MonitorTransactionalDeadLetter();
   return 0;
}
using System;
using System.Messaging;

namespace MyProject
{
    /// <summary>
    /// Provides a container class for the example.
    /// </summary>
    public class MyNewQueue
    {

        //**************************************************
        // Provides an entry point into the application.
        //		
        // This example demonstrates several ways to set
        // a queue's path.
        //**************************************************

        public static void Main()
        {
            // Create a new instance of the class.
            MyNewQueue myNewQueue = new MyNewQueue();

            myNewQueue.SendPublic();
            myNewQueue.SendPrivate();
            myNewQueue.SendByLabel();
            myNewQueue.SendByFormatName();
            myNewQueue.MonitorComputerJournal();
            myNewQueue.MonitorQueueJournal();
            myNewQueue.MonitorDeadLetter();
            myNewQueue.MonitorTransactionalDeadLetter();

            return;
        }
        
        // References public queues.
        public void SendPublic()
        {
            MessageQueue myQueue = new MessageQueue(".\\myQueue");
            myQueue.Send("Public queue by path name.");

            return;
        }

        // References private queues.
        public void SendPrivate()
        {
            MessageQueue myQueue = new
                MessageQueue(".\\Private$\\myQueue");
            myQueue.Send("Private queue by path name.");

            return;
        }

        // References queues by label.
        public void SendByLabel()
        {
            MessageQueue myQueue = new MessageQueue("Label:TheLabel");
            myQueue.Send("Queue by label.");

            return;
        }

        // References queues by format name.
        public void SendByFormatName()
        {
            MessageQueue myQueue = new
                MessageQueue("FormatName:Public=5A5F7535-AE9A-41d4" +
                "-935C-845C2AFF7112");
            myQueue.Send("Queue by format name.");

            return;
        }

        // References computer journal queues.
        public void MonitorComputerJournal()
        {
            MessageQueue computerJournal = new
                MessageQueue(".\\Journal$");
            while(true)
            {
                Message journalMessage = computerJournal.Receive();
                // Process the journal message.
            }
        }

        // References queue journal queues.
        public void MonitorQueueJournal()
        {
            MessageQueue queueJournal = new
                MessageQueue(".\\myQueue\\Journal$");
            while(true)
            {
                Message journalMessage = queueJournal.Receive();
                // Process the journal message.
            }
        }
        
        // References dead-letter queues.
        public void MonitorDeadLetter()
        {
            MessageQueue deadLetter = new
                MessageQueue(".\\DeadLetter$");
            while(true)
            {
                Message deadMessage = deadLetter.Receive();
                // Process the dead-letter message.
            }
        }

        // References transactional dead-letter queues.
        public void MonitorTransactionalDeadLetter()
        {
            MessageQueue TxDeadLetter = new
                MessageQueue(".\\XactDeadLetter$");
            while(true)
            {
                Message txDeadLetter = TxDeadLetter.Receive();
                // Process the transactional dead-letter message.
            }
        }
    }
}
Imports System.Messaging

Public Class MyNewQueue


        
        ' Provides an entry point into the application.
        '		 
        ' This example demonstrates several ways to set
        ' a queue's path.
        

        Public Shared Sub Main()

            ' Create a new instance of the class.
            Dim myNewQueue As New MyNewQueue()

            myNewQueue.SendPublic()
            myNewQueue.SendPrivate()
            myNewQueue.SendByLabel()
            myNewQueue.SendByFormatName()
            myNewQueue.MonitorComputerJournal()
            myNewQueue.MonitorQueueJournal()
            myNewQueue.MonitorDeadLetter()
            myNewQueue.MonitorTransactionalDeadLetter()

            Return

        End Sub


        ' References public queues.
        Public Sub SendPublic()

            Dim myQueue As New MessageQueue(".\myQueue")
            myQueue.Send("Public queue by path name.")

            Return

        End Sub


        ' References private queues.
        Public Sub SendPrivate()

            Dim myQueue As New MessageQueue(".\Private$\myQueue")
            myQueue.Send("Private queue by path name.")

            Return

        End Sub


        ' References queues by label.
        Public Sub SendByLabel()

            Dim myQueue As New MessageQueue("Label:TheLabel")
            myQueue.Send("Queue by label.")

            Return

        End Sub


        ' References queues by format name.
        Public Sub SendByFormatName()

            Dim myQueue As New _
                MessageQueue("FormatName:Public=" + _
                    "5A5F7535-AE9A-41d4-935C-845C2AFF7112")
            myQueue.Send("Queue by format name.")

            Return

        End Sub


        ' References computer journal queues.
        Public Sub MonitorComputerJournal()

            Dim computerJournal As New MessageQueue(".\Journal$")

            While True

                Dim journalMessage As Message = _
                    computerJournal.Receive()

                ' Process the journal message.

            End While

            Return
        End Sub


        ' References queue journal queues.
        Public Sub MonitorQueueJournal()

            Dim queueJournal As New _
                            MessageQueue(".\myQueue\Journal$")

            While True

                Dim journalMessage As Message = _
                    queueJournal.Receive()

                ' Process the journal message.

            End While

            Return
        End Sub


        ' References dead-letter queues.
        Public Sub MonitorDeadLetter()
            Dim deadLetter As New MessageQueue(".\DeadLetter$")

            While True

                Dim deadMessage As Message = deadLetter.Receive()

                ' Process the dead-letter message.

            End While

            Return

        End Sub


        ' References transactional dead-letter queues.
        Public Sub MonitorTransactionalDeadLetter()

            Dim TxDeadLetter As New MessageQueue(".\XactDeadLetter$")

            While True

                Dim txDeadLetterMessage As Message = _
                    TxDeadLetter.Receive()

                ' Process the transactional dead-letter message.

            End While

            Return

        End Sub

End Class

Contoh kode berikut mengirim pesan ke antrean, dan menerima pesan dari antrean, menggunakan kelas khusus aplikasi yang disebut Order.

#using <system.dll>
#using <system.messaging.dll>

using namespace System;
using namespace System::Messaging;

// This class represents an object the following example 
// sends to a queue and receives from a queue.
ref class Order
{
public:
   int orderId;
   DateTime orderTime;
};


/// <summary>
/// Provides a container class for the example.
/// </summary>
ref class MyNewQueue
{
public:

   //*************************************************
   // Sends an Order to a queue.
   //*************************************************
   void SendMessage()
   {
      // Create a new order and set values.
      Order^ sentOrder = gcnew Order;
      sentOrder->orderId = 3;
      sentOrder->orderTime = DateTime::Now;

      // Connect to a queue on the local computer.
      MessageQueue^ myQueue = gcnew MessageQueue( ".\\myQueue" );

      // Send the Order to the queue.
      myQueue->Send( sentOrder );
      return;
   }

   //*************************************************
   // Receives a message containing an Order.
   //*************************************************
   void ReceiveMessage()
   {
      // Connect to the a queue on the local computer.
      MessageQueue^ myQueue = gcnew MessageQueue( ".\\myQueue" );

      // Set the formatter to indicate body contains an Order.
      array<Type^>^p = gcnew array<Type^>(1);
      p[ 0 ] = Order::typeid;
      myQueue->Formatter = gcnew XmlMessageFormatter( p );
      try
      {
         // Receive and format the message. 
         Message^ myMessage = myQueue->Receive();
         Order^ myOrder = static_cast<Order^>(myMessage->Body);

         // Display message information.
         Console::WriteLine( "Order ID: {0}", myOrder->orderId );
         Console::WriteLine( "Sent: {0}", myOrder->orderTime );
      }
      catch ( MessageQueueException^ ) 
      {
         // Handle Message Queuing exceptions.
      }
      // Handle invalid serialization format.
      catch ( InvalidOperationException^ e ) 
      {
         Console::WriteLine( e->Message );
      }

      // Catch other exceptions as necessary.
      return;
   }
};

//*************************************************
// Provides an entry point into the application.
//         
// This example sends and receives a message from
// a queue.
//*************************************************
int main()
{
   // Create a new instance of the class.
   MyNewQueue^ myNewQueue = gcnew MyNewQueue;

   // Send a message to a queue.
   myNewQueue->SendMessage();

   // Receive a message from a queue.
   myNewQueue->ReceiveMessage();
   return 0;
}
using System;
using System.Messaging;

namespace MyProject
{

    // This class represents an object the following example
    // sends to a queue and receives from a queue.
    public class Order
    {
        public int orderId;
        public DateTime orderTime;
    };	

    /// <summary>
    /// Provides a container class for the example.
    /// </summary>
    public class MyNewQueue
    {

        //**************************************************
        // Provides an entry point into the application.
        //		
        // This example sends and receives a message from
        // a queue.
        //**************************************************

        public static void Main()
        {
            // Create a new instance of the class.
            MyNewQueue myNewQueue = new MyNewQueue();

            // Send a message to a queue.
            myNewQueue.SendMessage();

            // Receive a message from a queue.
            myNewQueue.ReceiveMessage();

            return;
        }

        //**************************************************
        // Sends an Order to a queue.
        //**************************************************
        
        public void SendMessage()
        {
            
            // Create a new order and set values.
            Order sentOrder = new Order();
            sentOrder.orderId = 3;
            sentOrder.orderTime = DateTime.Now;

            // Connect to a queue on the local computer.
            MessageQueue myQueue = new MessageQueue(".\\myQueue");

            // Send the Order to the queue.
            myQueue.Send(sentOrder);

            return;
        }

        //**************************************************
        // Receives a message containing an Order.
        //**************************************************
        
        public  void ReceiveMessage()
        {
            // Connect to the a queue on the local computer.
            MessageQueue myQueue = new MessageQueue(".\\myQueue");

            // Set the formatter to indicate body contains an Order.
            myQueue.Formatter = new XmlMessageFormatter(new Type[]
                {typeof(MyProject.Order)});
            
            try
            {
                // Receive and format the message.
                Message myMessage =	myQueue.Receive();
                Order myOrder = (Order)myMessage.Body;

                // Display message information.
                Console.WriteLine("Order ID: " +
                    myOrder.orderId.ToString());
                Console.WriteLine("Sent: " +
                    myOrder.orderTime.ToString());
            }
            
            catch (MessageQueueException)
            {
                // Handle Message Queuing exceptions.
            }

            // Handle invalid serialization format.
            catch (InvalidOperationException e)
            {
                Console.WriteLine(e.Message);
            }
            
            // Catch other exceptions as necessary.

            return;
        }
    }
}
Imports System.Messaging

    ' This class represents an object the following example 
    ' sends to a queue and receives from a queue.
    Public Class Order
        Public orderId As Integer
        Public orderTime As DateTime
    End Class


   
    Public Class MyNewQueue


        '
        ' Provides an entry point into the application.
        '		 
        ' This example sends and receives a message from
        ' a qeue.
        '

        Public Shared Sub Main()

            ' Create a new instance of the class.
            Dim myNewQueue As New MyNewQueue()

            ' Send a message to a queue.
            myNewQueue.SendMessage()

            ' Receive a message from a queue.
            myNewQueue.ReceiveMessage()

            Return

        End Sub


        '
        ' Sends an Order to a queue.
        '

        Public Sub SendMessage()

            ' Create a new order and set values.
            Dim sentOrder As New Order()
            sentOrder.orderId = 3
            sentOrder.orderTime = DateTime.Now

            ' Connect to a queue on the local computer.
            Dim myQueue As New MessageQueue(".\myQueue")

            ' Send the Order to the queue.
            myQueue.Send(sentOrder)

            Return

        End Sub


        '
        ' Receives a message containing an Order.
        '

        Public Sub ReceiveMessage()

            ' Connect to the a queue on the local computer.
            Dim myQueue As New MessageQueue(".\myQueue")

            ' Set the formatter to indicate the body contains an Order.
            myQueue.Formatter = New XmlMessageFormatter(New Type() _
                {GetType(Order)})

            Try

                ' Receive and format the message. 
                Dim myMessage As Message = myQueue.Receive()
                Dim myOrder As Order = CType(myMessage.Body, Order)

                ' Display message information.
                Console.WriteLine(("Order ID: " + _
                    myOrder.orderId.ToString()))
                Console.WriteLine(("Sent: " + _
                    myOrder.orderTime.ToString()))

            Catch m As MessageQueueException
                ' Handle Message Queuing exceptions.

            Catch e As InvalidOperationException
                ' Handle invalid serialization format.
                Console.WriteLine(e.Message)


                ' Catch other exceptions as necessary.

            End Try

            Return

        End Sub

End Class

Keterangan

Teknologi Antrean Pesan memungkinkan aplikasi berjalan pada waktu yang berbeda untuk berkomunikasi di seluruh jaringan dan sistem heterogen yang mungkin offline untuk sementara waktu. Aplikasi mengirim, menerima, atau mengintip (membaca tanpa menghapus) pesan dari antrean. Antrean Pesan adalah komponen opsional Windows 2000 dan Windows NT, dan harus diinstal secara terpisah.

Kelas MessageQueue adalah pembungkus di sekitar Antrean Pesan. Ada beberapa versi Antrean Pesan, dan menggunakan MessageQueue kelas dapat mengakibatkan perilaku yang sedikit berbeda, tergantung pada sistem operasi yang Anda gunakan.

Kelas MessageQueue menyediakan referensi ke antrean Antrean Pesan. Anda dapat menentukan jalur di MessageQueue konstruktor untuk menyambungkan ke sumber daya yang ada, atau Anda dapat membuat antrean baru di server. Sebelum dapat memanggil Send(Object), , Peekatau Receive, Anda harus mengaitkan instans MessageQueue baru kelas dengan antrean yang ada. Pada saat itu, Anda dapat memanipulasi properti antrean seperti Category dan Label.

MessageQueue mendukung dua jenis pengambilan pesan: sinkron dan asinkron. Metode sinkron, Peek dan Receive, menyebabkan utas proses menunggu interval waktu tertentu agar pesan baru tiba dalam antrean. Metode asinkron, BeginPeek dan BeginReceive, memungkinkan tugas aplikasi utama untuk berlanjut dalam utas terpisah hingga pesan tiba dalam antrean. Metode ini berfungsi dengan menggunakan objek panggilan balik dan objek status untuk mengomunikasikan informasi antar utas.

Saat Membuat instans MessageQueue baru kelas, Anda tidak membuat antrean Antrean Pesan baru. Sebagai gantinya Create(String), Anda dapat menggunakan metode , Delete(String), dan Purge untuk mengelola antrean di server.

Tidak seperti Purge, Create(String) dan Delete(String) merupakan static anggota, sehingga Anda dapat memanggil mereka tanpa membuat instans MessageQueue baru kelas.

Anda dapat mengatur MessageQueue properti objek Path dengan salah satu dari tiga nama: nama yang mudah diingat FormatName, , atau Label. Nama yang mudah diingat, yang ditentukan oleh antrean dan properti, adalah MachineNameQueueName\untuk antrean publik, dan\\QueueNameMachineNamePrivate$untuk antrean privat.QueueNameMachineName Properti FormatName memungkinkan akses offline ke antrean pesan. Terakhir, Anda dapat menggunakan properti antrean Label untuk mengatur antrean Path.

Untuk daftar nilai properti awal untuk instans MessageQueue, lihat MessageQueue konstruktor.

Konstruktor

MessageQueue()

Menginisialisasi instans baru kelas MessageQueue. Setelah konstruktor tanpa parameter menginisialisasi instans baru, Anda harus mengatur properti instans Path sebelum Dapat menggunakan instans.

MessageQueue(String)

Menginisialisasi instans MessageQueue baru kelas yang mereferensikan antrean Antrean Pesan di jalur yang ditentukan.

MessageQueue(String, Boolean)

Menginisialisasi instans MessageQueue baru kelas yang mereferensikan antrean Antrean Pesan di jalur yang ditentukan dan dengan pembatasan akses baca yang ditentukan.

MessageQueue(String, Boolean, Boolean)

Menginisialisasi instans baru kelas MessageQueue.

MessageQueue(String, Boolean, Boolean, QueueAccessMode)

Menginisialisasi instans baru kelas MessageQueue.

MessageQueue(String, QueueAccessMode)

Menginisialisasi instans baru kelas MessageQueue.

Bidang

InfiniteQueueSize

Menentukan bahwa tidak ada batasan ukuran untuk antrean.

InfiniteTimeout

Menentukan bahwa tidak ada waktu habis untuk metode yang mengintip atau menerima pesan.

Properti

AccessMode

Mendapatkan nilai yang menunjukkan mode akses untuk antrean.

Authenticate

Mendapatkan atau menetapkan nilai yang menunjukkan apakah antrean hanya menerima pesan yang diautentikasi.

BasePriority

Mendapatkan atau mengatur prioritas dasar yang digunakan Antrean Pesan untuk merutekan pesan antrean publik melalui jaringan.

CanRaiseEvents

Mendapatkan nilai yang menunjukkan apakah komponen dapat menaikkan peristiwa.

(Diperoleh dari Component)
CanRead

Mendapatkan nilai yang menunjukkan apakah MessageQueue dapat dibaca.

CanWrite

Mendapatkan nilai yang menunjukkan apakah MessageQueue dapat ditulis.

Category

Mendapatkan atau mengatur kategori antrean.

Container

IContainer Mendapatkan yang berisi Component.

(Diperoleh dari Component)
CreateTime

Mendapatkan waktu dan tanggal antrean dibuat di Antrean Pesan.

DefaultPropertiesToSend

Mendapatkan atau mengatur nilai properti pesan yang akan digunakan secara default saat aplikasi mengirim pesan ke antrean.

DenySharedReceive

Mendapatkan atau menetapkan nilai yang menunjukkan apakah ini MessageQueue memiliki akses eksklusif untuk menerima pesan dari antrean Antrean Pesan.

DesignMode

Mendapatkan nilai yang menunjukkan apakah Component saat ini dalam mode desain.

(Diperoleh dari Component)
EnableConnectionCache

Mendapatkan atau menetapkan nilai yang menunjukkan apakah cache koneksi akan dipertahankan oleh aplikasi.

EncryptionRequired

Mendapatkan atau menetapkan nilai yang menunjukkan apakah antrean hanya menerima pesan non-privat (tidak terenkripsi).

Events

Mendapatkan daftar penanganan aktivitas yang dilampirkan ke ini Component.

(Diperoleh dari Component)
FormatName

Mendapatkan nama antrean unik yang dihasilkan Oleh Antrean Pesan pada saat pembuatan antrean.

Formatter

Mendapatkan atau mengatur pemformat yang digunakan untuk membuat serialisasi objek ke dalam atau mendeserialisasi objek dari isi pesan yang dibaca dari atau ditulis ke antrean.

Id

Mendapatkan pengidentifikasi Antrean Pesan unik dari antrean.

Label

Mendapatkan atau mengatur deskripsi antrean.

LastModifyTime

Mendapatkan terakhir kali properti antrean dimodifikasi.

MachineName

Mendapatkan atau mengatur nama komputer tempat antrean Antrean Pesan berada.

MaximumJournalSize

Mendapatkan atau mengatur ukuran maksimum antrean jurnal.

MaximumQueueSize

Mendapatkan atau mengatur ukuran maksimum antrean.

MessageReadPropertyFilter

Mendapatkan atau mengatur filter properti untuk menerima atau mengintip pesan.

MulticastAddress

Diperkenalkan di MSMQ 3.0. Mendapatkan atau mengatur alamat multicast yang terkait dengan antrean.

Path

Mendapatkan atau mengatur jalur antrean. Path Mengatur penyebab MessageQueue menunjuk ke antrean baru.

QueueName

Mendapatkan atau mengatur nama yang mudah diingat yang mengidentifikasi antrean.

ReadHandle

Mendapatkan handel asli yang digunakan untuk membaca pesan dari antrean pesan.

Site

Mendapatkan atau mengatur ISite dari Component.

(Diperoleh dari Component)
SynchronizingObject

Mendapatkan atau mengatur objek yang menghaluskan panggilan penanganan aktivitas yang dihasilkan dari peristiwa ReceiveCompleted atau PeekCompleted .

Transactional

Mendapatkan nilai yang menunjukkan apakah antrean hanya menerima transaksi.

UseJournalQueue

Mendapatkan atau menetapkan nilai yang menunjukkan apakah pesan yang diterima disalin ke antrean jurnal.

WriteHandle

Mendapatkan handel asli yang digunakan untuk mengirim pesan ke antrean pesan.

Metode

BeginPeek()

Memulai operasi intip asinkron yang tidak memiliki waktu habis. Operasi tidak selesai sampai pesan tersedia dalam antrean.

BeginPeek(TimeSpan)

Memulai operasi intip asinkron yang memiliki waktu habis yang ditentukan. Operasi tidak selesai sampai pesan tersedia dalam antrean atau waktu habis terjadi.

BeginPeek(TimeSpan, Cursor, PeekAction, Object, AsyncCallback)

Memulai operasi intip asinkron yang memiliki batas waktu tertentu dan yang menggunakan kursor tertentu, tindakan cuplikan tertentu, dan objek status tertentu. Objek status menyediakan informasi terkait sepanjang masa operasi. Kelebihan beban ini menerima pemberitahuan, melalui panggilan balik, identitas penanganan aktivitas untuk operasi. Operasi tidak selesai sampai pesan tersedia dalam antrean atau waktu habis terjadi.

BeginPeek(TimeSpan, Object)

Memulai operasi intip asinkron yang memiliki batas waktu tertentu dan objek status tertentu, yang menyediakan informasi terkait sepanjang masa pakai operasi. Operasi tidak selesai sampai pesan tersedia dalam antrean atau waktu habis terjadi.

BeginPeek(TimeSpan, Object, AsyncCallback)

Memulai operasi intip asinkron yang memiliki batas waktu tertentu dan objek status tertentu, yang menyediakan informasi terkait sepanjang masa pakai operasi. Kelebihan beban ini menerima pemberitahuan, melalui panggilan balik, identitas penanganan aktivitas untuk operasi. Operasi tidak selesai sampai pesan tersedia dalam antrean atau waktu habis terjadi.

BeginReceive()

Memulai operasi penerimaan asinkron yang tidak memiliki waktu habis. Operasi tidak selesai sampai pesan tersedia dalam antrean.

BeginReceive(TimeSpan)

Memulai operasi penerimaan asinkron yang memiliki waktu habis yang ditentukan. Operasi tidak selesai sampai pesan tersedia dalam antrean atau waktu habis terjadi.

BeginReceive(TimeSpan, Cursor, Object, AsyncCallback)

Memulai operasi penerimaan asinkron yang memiliki batas waktu tertentu dan menggunakan kursor tertentu dan objek status tertentu. Objek status menyediakan informasi terkait sepanjang masa operasi. Kelebihan beban ini menerima pemberitahuan, melalui panggilan balik, identitas penanganan aktivitas untuk operasi. Operasi tidak selesai sampai pesan tersedia dalam antrean atau waktu habis terjadi.

BeginReceive(TimeSpan, Object)

Memulai operasi penerimaan asinkron yang memiliki batas waktu tertentu dan objek status tertentu, yang menyediakan informasi terkait selama masa pakai operasi. Operasi tidak selesai sampai pesan tersedia dalam antrean atau waktu habis terjadi.

BeginReceive(TimeSpan, Object, AsyncCallback)

Memulai operasi penerimaan asinkron yang memiliki batas waktu tertentu dan objek status tertentu, yang menyediakan informasi terkait selama masa pakai operasi. Kelebihan beban ini menerima pemberitahuan, melalui panggilan balik, identitas penanganan aktivitas untuk operasi. Operasi tidak selesai sampai pesan tersedia dalam antrean atau waktu habis terjadi.

ClearConnectionCache()

Menghapus cache koneksi.

Close()

Membebaskan semua sumber daya yang dialokasikan oleh MessageQueue.

Create(String)

Membuat antrean Antrean Pesan non-transaksi di jalur yang ditentukan.

Create(String, Boolean)

Membuat antrean Antrean Pesan transaksi atau non-transaksi pada jalur yang ditentukan.

CreateCursor()

Membuat baru Cursor untuk antrean pesan saat ini.

CreateObjRef(Type)

Membuat objek yang berisi semua informasi relevan yang diperlukan untuk menghasilkan proksi yang digunakan untuk berkomunikasi dengan objek jarak jauh.

(Diperoleh dari MarshalByRefObject)
Delete(String)

Menghapus antrean pada server Antrean Pesan.

Dispose()

Merilis semua sumber daya yang Componentdigunakan oleh .

(Diperoleh dari Component)
Dispose(Boolean)

Membuang sumber daya (selain memori) yang digunakan oleh MessageQueue.

EndPeek(IAsyncResult)

Menyelesaikan operasi intip asinkron yang ditentukan.

EndReceive(IAsyncResult)

Menyelesaikan operasi penerimaan asinkron yang ditentukan.

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
Exists(String)

Menentukan apakah antrean Antrean Pesan ada di jalur yang ditentukan.

GetAllMessages()

Mengembalikan semua pesan yang ada dalam antrean.

GetEnumerator()
Kedaluwarsa.

Menghitung pesan dalam antrean. GetEnumerator() tidak digunakan lagi. GetMessageEnumerator2() harus digunakan sebagai gantinya.

GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetLifetimeService()
Kedaluwarsa.

Mengambil objek layanan seumur hidup saat ini yang mengontrol kebijakan seumur hidup untuk instans ini.

(Diperoleh dari MarshalByRefObject)
GetMachineId(String)

Mendapatkan pengidentifikasi komputer tempat antrean yang direferensikan oleh ini MessageQueue berada.

GetMessageEnumerator()
Kedaluwarsa.

Membuat objek enumerator untuk semua pesan dalam antrean. GetMessageEnumerator() tidak digunakan lagi. GetMessageEnumerator2() harus digunakan sebagai gantinya.

GetMessageEnumerator2()

Membuat objek enumerator untuk semua pesan dalam antrean.

GetMessageQueueEnumerator()

Menyediakan semantik kursor hanya maju untuk menghitung melalui semua antrean publik di jaringan.

GetMessageQueueEnumerator(MessageQueueCriteria)

Menyediakan semantik kursor maju-saja untuk menghitung melalui semua antrean publik pada jaringan yang memenuhi kriteria yang ditentukan.

GetPrivateQueuesByMachine(String)

Mengambil semua antrean privat pada komputer yang ditentukan.

GetPublicQueues()

Mengambil semua antrean publik di jaringan.

GetPublicQueues(MessageQueueCriteria)

Mengambil semua antrean publik pada jaringan yang memenuhi kriteria yang ditentukan.

GetPublicQueuesByCategory(Guid)

Mengambil semua antrean publik pada jaringan yang termasuk dalam kategori yang ditentukan.

GetPublicQueuesByLabel(String)

Mengambil semua antrean publik pada jaringan yang membawa label yang ditentukan.

GetPublicQueuesByMachine(String)

Mengambil semua antrean publik yang berada di komputer yang ditentukan.

GetSecurityContext()

Mengambil konteks keamanan yang dikaitkan MSMQ dengan pengguna saat ini (identitas utas) pada saat panggilan ini.

GetService(Type)

Mengembalikan objek yang mewakili layanan yang disediakan oleh Component atau oleh Container.

(Diperoleh dari Component)
GetType()

Mendapatkan instans Type saat ini.

(Diperoleh dari Object)
InitializeLifetimeService()
Kedaluwarsa.

Mendapatkan objek layanan seumur hidup untuk mengontrol kebijakan seumur hidup untuk instans ini.

(Diperoleh dari MarshalByRefObject)
MemberwiseClone()

Membuat salinan dangkal dari yang saat ini Object.

(Diperoleh dari Object)
MemberwiseClone(Boolean)

Membuat salinan dangkal objek saat ini MarshalByRefObject .

(Diperoleh dari MarshalByRefObject)
Peek()

Mengembalikan tanpa menghapus (mengintip) pesan pertama dalam antrean yang direferensikan oleh ini MessageQueue. Metode Peek() ini sinkron, sehingga memblokir utas saat ini hingga pesan tersedia.

Peek(TimeSpan)

Mengembalikan tanpa menghapus (mengintip) pesan pertama dalam antrean yang direferensikan oleh ini MessageQueue. Metode Peek() ini sinkron, sehingga memblokir utas saat ini hingga pesan tersedia atau waktu habis yang ditentukan terjadi.

Peek(TimeSpan, Cursor, PeekAction)

Mengembalikan tanpa menghapus (mengintip) pesan saat ini atau berikutnya dalam antrean, menggunakan kursor yang ditentukan. Metode Peek() ini sinkron, sehingga memblokir utas saat ini hingga pesan tersedia atau waktu habis yang ditentukan terjadi.

PeekByCorrelationId(String)

Mengintip pesan yang cocok dengan pengidentifikasi korelasi yang diberikan dan segera menimbulkan pengecualian jika tidak ada pesan dengan pengidentifikasi korelasi yang ditentukan saat ini ada dalam antrean.

PeekByCorrelationId(String, TimeSpan)

Mengintip pesan yang cocok dengan pengidentifikasi korelasi yang diberikan dan menunggu hingga pesan dengan pengidentifikasi korelasi yang ditentukan tersedia dalam antrean, atau waktu habis kedaluwarsa.

PeekById(String)

Mengintip pesan yang pengidentifikasi pesannya cocok dengan id parameter .

PeekById(String, TimeSpan)

Mengintip pesan yang pengidentifikasi pesannya cocok dengan id parameter . Menunggu hingga pesan muncul dalam antrean atau waktu habis terjadi.

PeekByLookupId(Int64)

Diperkenalkan di MSMQ 3.0. Mengintip pesan yang cocok dengan pengidentifikasi pencarian yang diberikan dari antrean non-transaksi.

PeekByLookupId(MessageLookupAction, Int64)

Diperkenalkan di MSMQ 3.0. Mengintip pesan tertentu dari antrean. Pesan dapat ditentukan oleh pengidentifikasi pencarian atau dengan posisinya di bagian depan atau akhir antrean.

Purge()

Menghapus semua pesan yang terkandung dalam antrean.

Receive()

Menerima pesan pertama yang tersedia dalam antrean yang direferensikan MessageQueueoleh . Panggilan ini sinkron, dan memblokir utas eksekusi saat ini hingga pesan tersedia.

Receive(MessageQueueTransaction)

Menerima pesan pertama yang tersedia dalam antrean transaksi yang direferensikan oleh MessageQueue. Panggilan ini sinkron, dan memblokir utas eksekusi saat ini hingga pesan tersedia.

Receive(MessageQueueTransactionType)

Menerima pesan pertama yang tersedia dalam antrean yang direferensikan MessageQueueoleh . Panggilan ini sinkron, dan memblokir utas eksekusi saat ini hingga pesan tersedia.

Receive(TimeSpan)

Menerima pesan pertama yang tersedia dalam antrean yang direferensikan oleh MessageQueue dan menunggu hingga pesan tersedia dalam antrean, atau waktu habis kedaluwarsa.

Receive(TimeSpan, Cursor)

Menerima pesan saat ini dalam antrean, menggunakan kursor tertentu. Jika tidak ada pesan yang tersedia, metode ini menunggu hingga pesan tersedia, atau waktu habis kedaluwarsa.

Receive(TimeSpan, Cursor, MessageQueueTransaction)

Menerima pesan saat ini dalam antrean, menggunakan kursor tertentu. Jika tidak ada pesan yang tersedia, metode ini menunggu hingga pesan tersedia, atau waktu habis kedaluwarsa.

Receive(TimeSpan, Cursor, MessageQueueTransactionType)

Menerima pesan saat ini dalam antrean, menggunakan kursor tertentu. Jika tidak ada pesan yang tersedia, metode ini menunggu hingga pesan tersedia, atau waktu habis kedaluwarsa.

Receive(TimeSpan, MessageQueueTransaction)

Menerima pesan pertama yang tersedia dalam antrean transaksi yang direferensikan oleh MessageQueue dan menunggu hingga pesan tersedia dalam antrean, atau waktu habis kedaluwarsa.

Receive(TimeSpan, MessageQueueTransactionType)

Menerima pesan pertama yang tersedia dalam antrean yang direferensikan MessageQueueoleh . Panggilan ini sinkron, dan menunggu hingga pesan tersedia dalam antrean, atau waktu habis kedaluwarsa.

ReceiveByCorrelationId(String)

Menerima pesan yang cocok dengan pengidentifikasi korelasi yang diberikan (dari antrean non-transaksi) dan segera menimbulkan pengecualian jika tidak ada pesan dengan pengidentifikasi korelasi yang ditentukan saat ini ada dalam antrean.

ReceiveByCorrelationId(String, MessageQueueTransaction)

Menerima pesan yang cocok dengan pengidentifikasi korelasi yang diberikan (dari antrean transaksi) dan segera menimbulkan pengecualian jika tidak ada pesan dengan pengidentifikasi korelasi yang ditentukan saat ini ada dalam antrean.

ReceiveByCorrelationId(String, MessageQueueTransactionType)

Menerima pesan yang cocok dengan pengidentifikasi korelasi yang diberikan dan segera menimbulkan pengecualian jika tidak ada pesan dengan pengidentifikasi korelasi yang ditentukan saat ini ada dalam antrean.

ReceiveByCorrelationId(String, TimeSpan)

Menerima pesan yang cocok dengan pengidentifikasi korelasi yang diberikan (dari antrean non-transaksi) dan menunggu hingga pesan dengan pengidentifikasi korelasi yang ditentukan tersedia dalam antrean, atau waktu habis berakhir.

ReceiveByCorrelationId(String, TimeSpan, MessageQueueTransaction)

Menerima pesan yang cocok dengan pengidentifikasi korelasi yang diberikan (dari antrean transaksi) dan menunggu hingga pesan dengan pengidentifikasi korelasi yang ditentukan tersedia dalam antrean, atau waktu habis kedaluwarsa.

ReceiveByCorrelationId(String, TimeSpan, MessageQueueTransactionType)

Menerima pesan yang cocok dengan pengidentifikasi korelasi yang diberikan dan menunggu hingga pesan dengan pengidentifikasi korelasi yang ditentukan tersedia dalam antrean, atau waktu habis kedaluwarsa.

ReceiveById(String)

Menerima pesan yang cocok dengan pengidentifikasi yang diberikan dari antrean non-transaksi dan segera menimbulkan pengecualian jika tidak ada pesan dengan pengidentifikasi yang ditentukan yang saat ini ada dalam antrean.

ReceiveById(String, MessageQueueTransaction)

Menerima pesan yang cocok dengan pengidentifikasi yang diberikan (dari antrean transaksi) dan segera menimbulkan pengecualian jika tidak ada pesan dengan pengidentifikasi yang ditentukan yang saat ini ada dalam antrean.

ReceiveById(String, MessageQueueTransactionType)

Menerima pesan yang cocok dengan pengidentifikasi yang diberikan dan segera menimbulkan pengecualian jika tidak ada pesan dengan pengidentifikasi yang ditentukan yang saat ini ada dalam antrean.

ReceiveById(String, TimeSpan)

Menerima pesan yang cocok dengan pengidentifikasi yang diberikan (dari antrean non-transaksi) dan menunggu hingga pesan dengan pengidentifikasi yang ditentukan tersedia dalam antrean atau waktu habis kedaluwarsa.

ReceiveById(String, TimeSpan, MessageQueueTransaction)

Menerima pesan yang cocok dengan pengidentifikasi yang diberikan (dari antrean transaksi) dan menunggu hingga pesan dengan pengidentifikasi yang ditentukan tersedia dalam antrean atau waktu habis kedaluwarsa.

ReceiveById(String, TimeSpan, MessageQueueTransactionType)

Menerima pesan yang cocok dengan pengidentifikasi yang diberikan dan menunggu hingga pesan dengan pengidentifikasi yang ditentukan tersedia dalam antrean atau waktu habis kedaluwarsa.

ReceiveByLookupId(Int64)

Diperkenalkan di MSMQ 3.0. Menerima pesan yang cocok dengan pengidentifikasi pencarian yang diberikan dari antrean non-transaksi.

ReceiveByLookupId(MessageLookupAction, Int64, MessageQueueTransaction)

Diperkenalkan di MSMQ 3.0. Menerima pesan tertentu dari antrean transaksi. Pesan dapat ditentukan oleh pengidentifikasi pencarian atau dengan posisinya di bagian depan atau akhir antrean.

ReceiveByLookupId(MessageLookupAction, Int64, MessageQueueTransactionType)

Diperkenalkan di MSMQ 3.0. Menerima pesan tertentu dari antrean, menggunakan konteks transaksi yang ditentukan. Pesan dapat ditentukan oleh pengidentifikasi pencarian atau dengan posisinya di bagian depan atau akhir antrean.

Refresh()

Menyegarkan properti yang disajikan oleh MessageQueue untuk mencerminkan status sumber daya saat ini.

ResetPermissions()

Mereset daftar izin ke nilai default sistem operasi. Menghapus izin antrean apa pun yang telah Anda tambahkan ke daftar default.

Send(Object)

Mengirim objek ke antrean non-transaksi yang direferensikan oleh ini MessageQueue.

Send(Object, MessageQueueTransaction)

Mengirim objek ke antrean transaksi yang direferensikan oleh ini MessageQueue.

Send(Object, MessageQueueTransactionType)

Mengirim objek ke antrean yang direferensikan oleh ini MessageQueue.

Send(Object, String)

Mengirim objek ke antrean non-transaksi yang direferensikan oleh ini MessageQueue dan menentukan label untuk pesan.

Send(Object, String, MessageQueueTransaction)

Mengirim objek ke antrean transaksi yang direferensikan oleh ini MessageQueue dan menentukan label untuk pesan.

Send(Object, String, MessageQueueTransactionType)

Mengirim objek ke antrean yang direferensikan oleh ini MessageQueue dan menentukan label untuk pesan.

SetPermissions(AccessControlList)

Menetapkan hak akses ke antrean berdasarkan konten daftar kontrol akses.

SetPermissions(MessageQueueAccessControlEntry)

Menetapkan hak akses ke antrean berdasarkan konten entri kontrol akses.

SetPermissions(String, MessageQueueAccessRights)

Memberi komputer, grup, atau hak akses yang ditentukan kepada pengguna.

SetPermissions(String, MessageQueueAccessRights, AccessControlEntryType)

Memberi komputer, grup, atau pengguna hak akses yang ditentukan, dengan jenis kontrol akses yang ditentukan (izinkan, tolak, cabut, atau atur).

ToString()

Mengembalikan yang String berisi nama Component, jika ada. Metode ini tidak boleh ditimpa.

(Diperoleh dari Component)

Acara

Disposed

Terjadi ketika komponen dibuang oleh panggilan ke Dispose() metode .

(Diperoleh dari Component)
PeekCompleted

Terjadi ketika pesan dibaca tanpa dihapus dari antrean. Ini adalah hasil dari operasi asinkron, BeginPeek().

ReceiveCompleted

Terjadi ketika pesan telah dihapus dari antrean. Kejadian ini dinaikkan oleh operasi asinkron, BeginReceive().

Metode Ekstensi

Cast<TResult>(IEnumerable)

Mentransmisikan elemen dari ke IEnumerable jenis yang ditentukan.

OfType<TResult>(IEnumerable)

Memfilter elemen berdasarkan IEnumerable jenis yang ditentukan.

AsParallel(IEnumerable)

Mengaktifkan paralelisasi kueri.

AsQueryable(IEnumerable)

Mengonversi menjadi IEnumerableIQueryable.

Berlaku untuk

Keamanan Thread

GetAllMessages() Hanya metode yang aman untuk utas.

Lihat juga