|
Re: ADO connections & pooling
Βασικά πιστεύω ότι το πρόβλημα είναι η ανασφάλεια για το τι ακριβώς συμβαίνει. Κανείς δεν είναι σίγουρος, αλλά πραγματικά το θέμα είναι απλό...
Όταν κάνεις close, απελευθερώνεις τα resources του server, της βάσης, και επιτρέπεις το connection να επιστρέψει στο pool.
Όταν κάνεις dispose απελευθερόνονται τα resources του client και μεγαλώνει η ελεύθερη μνήμη.
Αν δεν κλείσεις το reader, command, ΔΕΝ ΚΛΕΙΝΕΙ το connection, και να κάνεις close στο connection.
Γενικά είναι καλό να έχεις τα reader και τα command σε autoclose connection για να απελευθερόνονται τα resources του server όσο το συντομώτερο δυνατόν. Αυτό είναι πολύ καλό (best practice) για synchronous queries.
Δεν είναι για τα asynchronous queries, μιας πριν διαβάσεις το τέλος του reader μπορείς να ακυρώσεις το query και να απελευθερώσεις πιο γρήγορα τα resources του server.
Αυτά, λίγα και καλά...
George J.
|
|