ObjectPoolはMicrosoftの新機能で、Microsoftは再利用可能なオブジェクトのメンテナンスを支援しています。
簡単に言えば、共有自転車と同様に、利用時にコードをスキャンしてロック解除すると、車両が占有されていることを意味します。使用すると、車をロックすると車両は占有を解除します。 これらの占領やリリースはすべてプラットフォームによって管理されています。
一部のオブジェクトはスレッド安全ではありませんが、オブジェクトをインスタンス化するたびにリソースを消費する必要があります。
まず、IPooledObjectPolicyインターフェースを継承する新しいSqlConnectionPooledObjectPolicyクラスを作成し<T>、その2つのメソッドを実装する必要があります。
Create メソッドでオブジェクトをインスタンス化する方法、Returnはオブジェクトが再利用可能かどうかを示し、falseが返された場合はオブジェクトプールから削除されます。
テストのソースコードは以下の通りです:
検査結果は以下の通りです。
最初の10クエリでは接続プールがやや遅く、その後はSqlConnectionの各インスタンスよりも速くなります。
添付はソースコードです
観光客の皆さん、この投稿の隠された内容を見たい方は、どうぞ 答える
|