سؤال

وأنا أسأل لأنني خلقت خدمة ويندوز، ويبدو أن تحت الحمل الثقيل (الذي في حالتي عندما ويندوز يتم تمهيد متابعة) البيانات داخل أكس لا يحصل تحميل قبل أن يدويا تفعل الاشياء معها في حالتي هو التحقق كم الصف هي في DataTable ومحددة داخل تلك البيانات.

وحصلت مجموعة بيانات مخطط.

وكود Speudo ستكون كما يلي:

dataset.readxml("c:\myfile.xml")
if dataset.datatable1.rowcount is 1 
    do something
else
    do something else

في حالتي، أن تصل إلى حالة آخر حتى لو كان هناك صف واحد.

إذا كنت بدء تشغيل الخدمة يدويا بعد، لأن القضية إلا وقف عليه، كل شيء تعمل بشكل جيد.


إذا انها متزامن، ما يمكن أن يتسبب ذلك السلوك؟

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

المحلول

وأساليب غير متزامن في الطبقات. NET يتبع نمط من BeginSomeAction () / EndSomeAction ()، لذلك تخميني هو أن ReadXml () غير متزامن. وفقا ل الوثائق ليس هناك BeginReadXml لمجموعة البيانات.

وتحرير: A تصفح سريع من خلال تنفيذ يشير إلى قراءة متزامن، وذلك ما لم يكن هناك شيء لقد غاب أنها تدعم تخميني.

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