C# 5.0 ميزة Async/Await و Rx - الامتدادات التفاعلية
-
27-09-2019 - |
سؤال
أنا أتساءل ماذا تعني الميزات الجديدة غير المتزامنة C# 5.0 بالنسبة إلى RX - الامتدادات التفاعلية؟ يبدو أنه ليس بديلاً ولكن يبدو أنهم يتداخلون - Task
و IObservable
.
المحلول
تحقق أيضا: نظرة عامة على TPL DataFlow حول TDF و RX:
قد يلاحظ القراء الأذكيون بعض أوجه التشابه بين TPL Dataflow والتمديدات التفاعلية (RX) ، المتوفرة حاليًا كتنزيل من موقع النماذج الأولية DevLabs. يركز RX في الغالب على التنسيق وتكوين تدفقات الأحداث باستخدام واجهة برمجة تطبيقات قائمة على LINQ ، مما يوفر مجموعة غنية من المجموعات المدمجة لمعالجة Datavables للبيانات. في المقابل ، تركز TPL Dataflow على توفير لبنات بناء لتمرير الرسائل وموازاة تطبيقات وحدة المعالجة المركزية والإدخال/الإخراج الكثيفة مع الإنتاجية العالية والكلية المنخفضة ، مع تزويد المطورين أيضًا بالتحكم الصريح في كيفية تخزين البيانات وتحركه حول النظام . على هذا النحو ، فإن RX و TPL Dataflow ، على الرغم من أنه يحتمل أن يُنظر إليه على أنه متشابه على مستوى 30،000 قدم ، يلبي الاحتياجات المتميزة. ومع ذلك ، فإن TPL DataFlow و RX يوفران قصة أفضل معًا.
نصائح أخرى
يكتب جيف على منتدى RX سيظل هذا RX يستخدم لتنظيم العديد من المهام التي تعتمد على الأحداث ، وقد أصدر RX إصدارًا جديدًا يتضمن IAsyncEnumerable
لاستخدام ميزات Async الجديدة في RX.