سؤال

كيف مهلة العمل في WCF ؟ أنا أعرف على سبيل المثال يمكنك تكوين sendTimeout و receiveTimeout بالنسبة للعملاء ملزمة.لكن كيف تعمل ؟

MSDN يصف sendTimeout كما:

فترة زمنية القيمة التي تحدد فترة تقديم إرسال العملية كاملة.يجب أن تكون هذه القيمة أكبر من أو يساوي إلى الصفر.الافتراضي هو 00:01:00.

ما هي عمليات إرسال/تلقي العمليات ؟

هل كانت مفيدة؟

المحلول

العميل:

  • SendTimeout يستخدم لتهيئة OperationTimeout الذي يحكم كل التفاعل إرسال رسالة (بما في ذلك تلقي رسالة رد في طلب الرد الحالة).مهلة هذا ينطبق أيضا عند إرسال رسائل الرد من CallbackContract الأسلوب.
  • OpenTimeout و CloseTimeout تستخدم عند فتح وإغلاق قنوات (عندما لا يوجد صريحة مهلة يتم تمرير قيمة).
  • ReceiveTimeout لا تستخدم.

من جانب الملقم:

  • إرسال فتح وإغلاق مهلة نفسه على العميل (على الاسترجاعات).
  • ReceiveTimeout يستخدم من قبل ServiceFramework طبقة تهيئة الدورة-مهلة الخمول.

المصدر براين مكنمارا على منتديات MSDN.

نصائح أخرى

انظر "مهلة في WCF و قيمها الافتراضية" http://blogs.msdn.com/b/hongmeig/archive/2010/03/06/timeouts-in-wcf-and-their-default-values.aspx

مهلة ملزمة-SendTimeout, ReceiveTimeout, OpenTimeout و CloseTimeout.يمكن تعيين بسهولة إما عن طريق التكوين أو قانون ملزم.القيمة الافتراضية تلك هي 1 دقيقة.

ServiceHost وقد OpenTimeout و CloseTimeout.الافتراضي OpenTimeout 1 دقيقة ، الافتراضي CloseTimeout هو 10 ثانية.

مهلة على جانب العميل القناة.هناك OperationTimeout ، يمكنك تعيين ذلك قبل الصب القناة IContextChannel.الافتراضي هذا هو أيضا 1 دقيقة.Ttimeout على النقل tcp ، ودعا ChannelInitializationTimeout و القيمة الافتراضية هي 5 ثوان.

ASPNET.هناك اغلاق مهلة مثل خدمة المضيف قريب مهلة, default 90 ثانية.ExecutionTimeout ، عملية مهلة ، الافتراضي هو 110 ثانية.

وبالإضافة إلى ما كان في هذا المنصب، وهناك أيضا مهلة عملية محددة في نهاية العميل. الاطلاع على:

http://final-proj.blogspot.com/2009 /09/wcf-timeouts.html

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top