Ich entwickle eine Anwendung so, dass ich mehrere DataReader gleichzeitig benutzen muss. Wenn ich sage, dass mehrere Datenreader bedeuten, ich meine MEHRERE DATENADER ... es würde ein paar gleichzeitig benötigt (etwas um 10-50 oder mehr)
Also ein Szenario, das ich fand, war, verschiedene Verbindungszeichenfolgen zu benutzen .. aber das implementierend, fühle ich mich peinlich !!!
Eine andere Methode ist, MARS zu verwenden, die ich fand, dass es ziemlich anständig war. Aber mein Zweifel ist, dass ich irgendwelche Vorsichtsmaßnahmen ergreifen oder treffen muss, wenn ich es umsetze oder etwas bösartig ist, das auf mich wartet: -)
von meiner so genannten Forschung, was ich in der Lage war zu finden, war, dass mit MARS der Server Daten schnell erzeugt, so dass die Client-App die Daten mit der gleichen Geschwindigkeit erhalten muss, wie sie kommt. Andernfalls wird der Datenspeicherpuffer mit führenden gefüllt um die Verarbeitung zu stoppen .. und wird nur aktiviert, wenn der Puffer leer wird.
Ich bin irgendwo hier verloren gegangen ....
Auch ich verwende nur SELECT-Anweisungen nur für diese Anforderung ..
Also meine Frage ist, dass irgendwelche Nachteile mit ihnen sind ?? wie viel von Daten können im Server Datenpuffer gespeichert werden, so dass die Verarbeitung nicht aufhören würde ??
Ich schlage vor, Sie verwenden mehrere Verbindungen, wenn es wirklich notwendig ist, aus 100 Datensätzen gleichzeitig zu lesen. Ich kann nicht sehen, warum Sie mehrere aktive Datenreader für eine einzelne Verbindung benötigen.
Es ist wahrscheinlicher, dass die Abfrage oder Aufgabe, die Sie erreichen möchten, durchgeführt werden kann, ohne dass diese große parallele Operation ausgeführt werden muss. Wenn Sie mit einigen Details genauer sein können, können wir vielleicht ein paar alternative Vorschläge ausarbeiten.
Tags und Links sql .net sql-server c# sql-server-2008