IReplyChannel.TryReceiveRequest(TimeSpan, RequestContext) 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 nilai yang menunjukkan apakah permintaan diterima sebelum interval waktu yang ditentukan berlalu.
public:
bool TryReceiveRequest(TimeSpan timeout, [Runtime::InteropServices::Out] System::ServiceModel::Channels::RequestContext ^ % context);
public bool TryReceiveRequest (TimeSpan timeout, out System.ServiceModel.Channels.RequestContext context);
abstract member TryReceiveRequest : TimeSpan * RequestContext -> bool
Public Function TryReceiveRequest (timeout As TimeSpan, ByRef context As RequestContext) As Boolean
Parameter
- timeout
- TimeSpan
TimeSpan yang menentukan berapa lama penerimaan operasi permintaan harus diselesaikan sebelum waktu habis dan mengembalikan false
.
- context
- RequestContext
Yang RequestContext diterima.
Mengembalikan
true
jika pesan permintaan diterima sebelum interval waktu yang ditentukan berlalu; jika tidak false
.
Contoh
Kode berikut mengilustrasikan cara menerapkan metode ini:
public bool TryReceiveRequest(TimeSpan timeout, out RequestContext requestContext)
{
bool result;
while (true)
{
result = this.InnerChannel.TryReceiveRequest(timeout, out requestContext);
if (!result || ProcessRequestContext(ref requestContext))
{
break;
}
}
return result;
}
Keterangan
Gunakan TryReceiveRequest(TimeSpan, RequestContext) ketika dapat diterima agar utas saat ini diblokir saat menunggu pesan permintaan tiba dalam antrean. Utas diblokir hingga yang ditentukan timeout
. Jika Anda memerlukan pemrosesan aplikasi untuk melanjutkan tanpa menunggu, gunakan metode asinkron BeginTryReceiveRequest(TimeSpan, AsyncCallback, Object) .
Catatan Bagi Implementer
Operasi mengembalikan false
jika yang ditentukan timeout
terlampaui.