MySQLCommand BeginExecuteReader مفقود معلمة AsyncCallback جعلها عديمة الفائدة تقريبا

StackOverflow https://stackoverflow.com/questions/1444884

سؤال

وأنا على أمل شخص هنا قد يساعدني.

والشركة التي أعمل ليفضلون أن أستعمل الخلية بدلا من MSSQL. لذلك أنا تحميل أحدث برنامج تشغيل (6.1)، وأنا ترقية الطبقة DB.

ولكن أنا لا يمكن العثور على وظيفة BeginExecuteReader الذي يأخذ رد كمعلمة.

هل هذا لسبب ما؟ أو أنها لا تعمل بشكل مختلف مع الخلية؟

وبقدر ما أستطيع أن أراه، إذا لم رمز يثير الاستدعاء، وأود أن الحاجة إلى الاستطلاع الذي يجعلها بطيئة. باستخدام موضوع حجب لكل اتصال هو أيضا شيء أريد أن يتجنبه.

وأي شخص الأفكار عن كيفية معالجة ذلك؟ (بغض النظر عن تغيير السائق الذي هو على الارجح وراء سلطاتي)

R

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

المحلول

والنسخة 6.3.4 من الخلية رابط تطبق أساليب المتزامن ولكن يبدو أنه يستحضر فقط مندوب بشكل غير متزامن لذلك سيكون من غير مؤمن إلى موضوع الدعوة ولكنه لن ينقذ أي من المواضيع ThreadPool. وهنا يكمن تقرير الشوائب حول هذه .

و، كما قلت لك، لم يكن لديك المعلمة الاستدعاء. وهنا يكمن تقرير الشوائب حول هذه .

مقدمي البيانات devart في تنفيذ طرق المتزامن بشكل صحيح، ولكنها ليست حرة.

وعلى أي حال، والمكالمات قاعدة بيانات المتزامن لا تعني أفضل التدرجية العامة من تلقاء انفسهم. أوصي قراءة المقال "<لأ href =" http://blogs.msdn.com/b/rickandy/archive/2009/11/14/should-my-database-calls-be-asynchronous.aspx "يختلط =" نوفولو "> يجب أن تكون المكالمات غير متزامن قاعدة البيانات الخاصة بي؟ " لتحليل متعمق.

نصائح أخرى

وأنا لا أعرف عن هذا الموصل على وجه التحديد، ولكن كل موصل الأخرى رأيت لك ينتظر فقط للملقم لإرجاع البيانات خلال الاستعلام أو دعوة تنفيذ () (). الأقرب ستحصل يستخدم "غير مصقول" نسخة، والتي ترجع فورا من تنفيذ () أو الاستعلام ()، ولكن كتل عند محاولة طلب الصف التالي ولكنه لم يصل من خادم الخلية حتى الان.

ودعم موضوع الخلية يبدو لي أن تكون أساسا مرحلة لاحقة.

وأنت لا يمكن، على سبيل المثال، عن طريق API C، إلغاء استعلام الصادرة. بدلا من ذلك، وظيفة الاستعلام مجرد كتل. لجعل متعددة الاستعلامات المتزامنة، مطلوب موضوع واحد لكل استفسار!

وحاول استخدام بوستجرس. أنا لم يستخدم (وضع API C قبالة لي - كل تلك typedefs).، ولكن لديها بالتأكيد الدعم المناسب للاستعلامات متعددة الخيوط (مثل المتزامن المكالمات، الخ)

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