2011-10-03 15 views
7

मैं एक एसिंक्रोनस सर्वर लिखने की कोशिश कर रहा हूं जो SQL सर्वर डेटाबेस से पूछताछ करता है और मुझे चिंता है कि मेरा डीबी पक्ष बहुत तुल्यकालिक है। विशेष रूप से, मैं ExecuteReader को असीमित रूप से कॉल कर सकता हूं लेकिन फिर reader.Item को असीमित रूप से कॉल नहीं कर सकता और वह जगह है जहां 57% समय बिताया जाता है (मेरे बहुमूल्य धागे को अवरुद्ध कर रहा है!)।असिंक्रोनस ADO.NET

क्या यह एडीओ.NET के साथ सबसे असीमित है या क्या reader.Item करने के लिए एक असीमित तरीका है?

+1

तो ... यह 'सी #' या '' एफ # है? – balexandre

+0

मुझे पता है कि आपका क्या मतलब है - सबवे आश्चर्यचकित हैं कि क्यों (एसक्यूएल) डेटा रीडर पर कोई एसिंक-विधियां नहीं हैं क्योंकि यह आपके शास्त्रीय नेटवर्क-बाध्य ऑपरेशन होना चाहिए। दस्तावेज़ों को पढ़ना यह कुछ हद तक संकेत दिया गया है कि BeginExecuteReader/EndExecuteReader "सर्वर से एक या अधिक परिणाम सेट पुनर्प्राप्त करेगा।" - तो क्या आप सुनिश्चित हैं कि अधिकांश समय पढ़ने में बिताया जाता है? – Carsten

+0

@ बालेक्सेंड्रे: या तो। जो भी सबसे उपयुक्त है। –

उत्तर

संबंधित मुद्दे