मैं एक एसिंक्रोनस सर्वर लिखने की कोशिश कर रहा हूं जो SQL सर्वर डेटाबेस से पूछताछ करता है और मुझे चिंता है कि मेरा डीबी पक्ष बहुत तुल्यकालिक है। विशेष रूप से, मैं ExecuteReader
को असीमित रूप से कॉल कर सकता हूं लेकिन फिर reader.Item
को असीमित रूप से कॉल नहीं कर सकता और वह जगह है जहां 57% समय बिताया जाता है (मेरे बहुमूल्य धागे को अवरुद्ध कर रहा है!)।असिंक्रोनस ADO.NET
क्या यह एडीओ.NET के साथ सबसे असीमित है या क्या reader.Item
करने के लिए एक असीमित तरीका है?
तो ... यह 'सी #' या '' एफ # है? – balexandre
मुझे पता है कि आपका क्या मतलब है - सबवे आश्चर्यचकित हैं कि क्यों (एसक्यूएल) डेटा रीडर पर कोई एसिंक-विधियां नहीं हैं क्योंकि यह आपके शास्त्रीय नेटवर्क-बाध्य ऑपरेशन होना चाहिए। दस्तावेज़ों को पढ़ना यह कुछ हद तक संकेत दिया गया है कि BeginExecuteReader/EndExecuteReader "सर्वर से एक या अधिक परिणाम सेट पुनर्प्राप्त करेगा।" - तो क्या आप सुनिश्चित हैं कि अधिकांश समय पढ़ने में बिताया जाता है? – Carsten
@ बालेक्सेंड्रे: या तो। जो भी सबसे उपयुक्त है। –