Mercurial > pub > ImplabNet
comparison Implab/Components/DisposablePool.cs @ 256:c52691faaf21 v3
Removed obsolete App, ComponentContainer
Extracted IAsyncComponent interface
Working on RunnableComponent
author | cin |
---|---|
date | Wed, 11 Apr 2018 03:05:14 +0300 |
parents | b933ec88446e |
children |
comparison
equal
deleted
inserted
replaced
255:b00441e04738 | 256:c52691faaf21 |
---|---|
4 using System.Diagnostics; | 4 using System.Diagnostics; |
5 using System.Diagnostics.CodeAnalysis; | 5 using System.Diagnostics.CodeAnalysis; |
6 | 6 |
7 namespace Implab.Components { | 7 namespace Implab.Components { |
8 /// <summary> | 8 /// <summary> |
9 /// The base class for implementing pools of disposable objects. | 9 /// The base class for implementing thread-safe pools of disposable objects. |
10 /// </summary> | 10 /// </summary> |
11 /// <remarks> | 11 /// <remarks> |
12 /// <para>This class maintains a set of pre-created objects and which are frequently allocated and released | 12 /// <para>This class maintains a set of pre-created objects which are frequently allocated and released |
13 /// by clients. The pool maintains maximum number of unsued object, any object above this limit is disposed, | 13 /// by clients. The pool maintains maximum number of unsued object, any object above this limit is disposed, |
14 /// if the pool is empty it will create new objects on demand.</para> | 14 /// if the pool is empty it will create new objects on demand.</para> |
15 /// <para>Instances of this class are thread-safe.</para> | 15 /// <para>Instances of this class are thread-safe.</para> |
16 /// </remarks> | 16 /// </remarks> |
17 public abstract class DisposablePool<T> : IDisposable { | 17 public abstract class DisposablePool<T> : IDisposable { |