Το ObjectPool είναι μια νέα δυνατότητα από τη Microsoft, η Microsoft μας βοηθά να διατηρήσουμε ορισμένα αντικείμενα που μπορούν να επαναχρησιμοποιηθούν.
Για να το θέσω απλά, παρόμοια με τα κοινόχρηστα ποδήλατα, όταν το χρησιμοποιείτε, σαρώστε τον κωδικό για να το ξεκλειδώσετε, το όχημα σημαίνει ότι είναι κατειλημμένο, όταν το χρησιμοποιείτε, όταν κλειδώνετε το αυτοκίνητο, το όχημα θα απελευθερώσει την πληρότητα. Αυτές οι καταλήψεις και οι απελευθερώσεις διατηρούνται όλες από την πλατφόρμα για εμάς.
Ορισμένα αντικείμενα δεν είναι ασφαλή για νήματα, αλλά κάθε φορά που δημιουργούμε το αντικείμενο, πρέπει να καταναλώνουμε κάποιους πόρους.
Αρχικά, δημιουργούμε μια νέα κλάση SqlConnectionPooledObjectPolicy που κληρονομεί τη διεπαφή IPooledObjectPolicy <T>και πρέπει να εφαρμόσει τις δύο μεθόδους της.
Πώς να δημιουργήσετε το αντικείμενο στη μέθοδο Δημιουργία,Η συνάρτηση Return υποδεικνύει εάν το αντικείμενο μπορεί να επαναχρησιμοποιηθεί και όταν επιστραφεί false, το αντικείμενο θα διαγραφεί από το χώρο συγκέντρωσης αντικειμένων.
Ο πηγαίος κώδικας δοκιμής έχει ως εξής:
Τα αποτελέσματα των δοκιμών είναι τα εξής:
Μπορεί να φανεί ότι η ομάδα σύνδεσης είναι λίγο πιο αργή στα πρώτα 10 ερωτήματα και μετά από αυτό, είναι ταχύτερη από κάθε εμφάνιση του SqlConnection.
Επισυνάπτεται ο πηγαίος κώδικας
Τουρίστες, αν θέλετε να δείτε το κρυφό περιεχόμενο αυτής της ανάρτησης, παρακαλώ Απάντηση
|