MessageQueue.PeekById Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mengembalikan salinan pesan yang memiliki pengidentifikasi pesan yang ditentukan tanpa menghapus pesan dari antrean.
Overload
PeekById(String) |
Mengintip pesan yang pengidentifikasi pesannya cocok dengan |
PeekById(String, TimeSpan) |
Mengintip pesan yang pengidentifikasi pesannya cocok dengan |
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
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
- 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 |