ObjectPool er en ny funktion fra Microsoft, Microsoft hjælper os med at vedligeholde nogle objekter, der kan genbruges.
For at sige det enkelt, ligesom med delte cykler, når du bruger den, scanner du koden for at låse den op, betyder køretøjet, at den er optaget, og når du bruger den, når du låser bilen, frigiver køretøjet besætningen. Disse besættelser og frigivelser vedligeholdes alle af platformen for os.
Nogle objekter er ikke trådsikre, men hver gang vi instansierer objektet, skal vi forbruge nogle ressourcer.
Først opretter vi en ny SqlConnectionPooledObjectPolicy-klasse, der arver <T>IPooledObjectPolicy-grænsefladen og skal implementere dens to metoder.
Sådan instansierer man objektet i Create-metoden,Return angiver, om objektet stadig kan genbruges, og når false returneres, slettes objektet fra objektpuljen.
Testkildekoden er som følger:
Testresultaterne er som følger:
Det kan ses, at forbindelsespuljen er lidt langsommere ved de første 10 forespørgsler, og derefter er den hurtigere end hver instansiering af SqlConnection.
Vedhæftet er kildekoden
Turister, hvis I vil se det skjulte indhold i dette indlæg, så vær venlig Svar
|