Bagikan melalui


MessageQueue.PeekById Metode

Definisi

Mengembalikan salinan pesan yang memiliki pengidentifikasi pesan yang ditentukan tanpa menghapus pesan dari antrean.

Overload

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.

PeekById(String)

Mengintip pesan yang pengidentifikasi pesannya cocok dengan id parameter .

public:
 System::Messaging::Message ^ PeekById(System::String ^ id);
public System.Messaging.Message PeekById (string id);
member this.PeekById : string -> System.Messaging.Message
Public Function PeekById (id As String) As Message

Parameter

id
String

Pesan Id yang akan diintip.

Mengembalikan

Properti Message yang Id cocok dengan id parameter .

Pengecualian

Parameternya id adalah null.

Tidak ada pesan dengan yang ditentukan id .

Terjadi kesalahan saat mengakses metode Antrean Pesan.

Contoh

Contoh kode berikut menunjukkan penggunaan PeekById(String).


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

// Create a new message.
Message^ msg = gcnew Message("Example Message Body");

// Send the message.
queue->Send(msg, "Example Message Label");

// Get the message's Id property value.
String^ id = msg->Id;

// Simulate doing other work so the message has time to arrive.
System::Threading::Thread::Sleep(TimeSpan::FromSeconds(10.0));

// Peek at the message.
msg = queue->PeekById(id);

queue->Close();

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

// Create a new message.
Message msg = new Message("Example Message Body");

// Send the message.
queue.Send(msg, "Example Message Label");

// Get the message's Id property value.
string id = msg.Id;

// Simulate doing other work so the message has time to arrive.
System.Threading.Thread.Sleep(TimeSpan.FromSeconds(10.0));

// Peek at the message.
msg = queue.PeekById(id);

Keterangan

Gunakan PeekById(String) untuk membaca, tanpa menghapus dari antrean, pesan yang memiliki pengidentifikasi pesan yang diketahui. Pengidentifikasi pesan unik di seluruh perusahaan Antrean Pesan, sehingga paling banyak akan ada satu pesan dalam antrean yang cocok dengan parameter yang diberikan id . Kelebihan beban ini memunculkan pengecualian jika antrean saat ini tidak berisi pesan.

Dua metode tambahan memungkinkan Anda mengintip pesan dalam antrean: Peek dan PeekByCorrelationId(String). Metode mengembalikan Peek pesan pertama dalam antrean; PeekByCorrelationId(String) mengembalikan pesan respons pengakuan, laporan, atau yang dihasilkan aplikasi yang dibuat sebagai akibat dari pesan yang dikirim ke antrean.

Tabel berikut menunjukkan apakah metode ini tersedia dalam berbagai mode Grup Kerja.

Mode grup kerja Tersedia
Komputer lokal Ya
Komputer lokal dan nama format langsung Ya
Komputer jarak jauh Tidak
Komputer jarak jauh dan nama format langsung Ya

Lihat juga

Berlaku untuk

PeekById(String, TimeSpan)

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

public:
 System::Messaging::Message ^ PeekById(System::String ^ id, TimeSpan timeout);
public System.Messaging.Message PeekById (string id, TimeSpan timeout);
member this.PeekById : string * TimeSpan -> System.Messaging.Message
Public Function PeekById (id As String, timeout As TimeSpan) As Message

Parameter

id
String

Pesan Id yang akan diintip.

timeout
TimeSpan

TimeSpan yang menunjukkan waktu untuk menunggu hingga pesan baru tersedia untuk diperiksa.

Mengembalikan

Properti Message yang Id cocok dengan id parameter .

Pengecualian

Parameternya id adalah null.

Nilai yang ditentukan untuk timeout parameter tidak valid, mungkin timeout kurang dari Zero atau lebih besar dari InfiniteTimeout.

Pesan dengan yang ditentukan id tidak ada dalam antrean dan tidak tiba sebelum periode yang ditentukan oleh parameter kedaluwarsa timeout .

Terjadi kesalahan saat mengakses metode Antrean Pesan.

Contoh

Contoh kode berikut menunjukkan penggunaan PeekById(String, TimeSpan).


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

// Create a new message.
Message^ msg = gcnew Message("Example Message Body");

// Send the message.
queue->Send(msg, "Example Message Label");

// Get the message's Id property value.
String^ id = msg->Id;

// Peek at the message.
msg = queue->PeekById(id, TimeSpan::FromSeconds(10.0));

queue->Close();

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

// Create a new message.
Message msg = new Message("Example Message Body");

// Send the message.
queue.Send(msg, "Example Message Label");

// Get the message's Id property value.
string id = msg.Id;

// Peek at the message.
msg = queue.PeekById(id, TimeSpan.FromSeconds(10.0));

Keterangan

Gunakan PeekById(String) untuk membaca, tanpa menghapus dari antrean, pesan yang memiliki pengidentifikasi pesan yang diketahui. Pengidentifikasi pesan unik di seluruh perusahaan Antrean Pesan, sehingga paling banyak akan ada satu pesan dalam antrean yang cocok dengan parameter yang diberikan id . Kelebihan beban ini memberikan pengecualian jika antrean saat ini tidak berisi pesan dan pesan baru tidak tiba sebelum waktu habis terjadi.

Parameter timeout tidak menentukan total waktu berjalan untuk metode ini. Sebaliknya, ini menentukan waktu untuk menunggu pesan baru tiba dalam antrean. Setiap kali pesan baru tiba, metode ini memeriksa Id dari pesan baru untuk melihat apakah pesan tersebut cocok dengan id parameter . Jika tidak, metode ini memulai periode waktu habis dan menunggu pesan baru lain tiba. Oleh karena itu, jika pesan baru terus tiba dalam periode waktu habis, dimungkinkan bagi metode ini untuk terus berjalan tanpa batas waktu, baik sampai periode waktu habis berakhir tanpa pesan baru yang tiba, atau sampai pesan tiba yang Id cocok id dengan parameter.

Dua metode tambahan memungkinkan Anda mengintip pesan dalam antrean: Peek dan PeekByCorrelationId(String). Metode mengembalikan Peek pesan pertama dalam antrean; PeekByCorrelationId(String) mengembalikan pesan respons pengakuan, laporan, atau yang dihasilkan aplikasi yang dibuat sebagai akibat dari pesan yang dikirim ke antrean.

Tabel berikut menunjukkan apakah metode ini tersedia dalam berbagai mode Grup Kerja.

Mode grup kerja Tersedia
Komputer lokal Ya
Komputer lokal dan nama format langsung Ya
Komputer jarak jauh Tidak
Komputer jarak jauh dan nama format langsung Ya

Lihat juga

Berlaku untuk