Mercurial > pub > ImplabNet
comparison Implab/ObjectPool.cs @ 119:2573b562e328 v2
Promises rewritten, added improved version of AsyncQueue
| author | cin |
|---|---|
| date | Sun, 11 Jan 2015 19:13:02 +0300 |
| parents | 8beee0d11de6 |
| children |
comparison
equal
deleted
inserted
replaced
| 118:e046a94eecb1 | 119:2573b562e328 |
|---|---|
| 16 /// новых экземпляров. | 16 /// новых экземпляров. |
| 17 /// </para> | 17 /// </para> |
| 18 /// <para>Пул поддерживает обращения сразу из нескольких потоков.</para> | 18 /// <para>Пул поддерживает обращения сразу из нескольких потоков.</para> |
| 19 /// </remarks> | 19 /// </remarks> |
| 20 public abstract class ObjectPool<T> where T : class { | 20 public abstract class ObjectPool<T> where T : class { |
| 21 readonly MTQueue<WeakReference> m_queue = new MTQueue<WeakReference>(); | 21 readonly AsyncQueue<WeakReference> m_queue = new AsyncQueue<WeakReference>(); |
| 22 readonly int m_size; | 22 readonly int m_size; |
| 23 int m_count = 0; | 23 int m_count = 0; |
| 24 | 24 |
| 25 protected ObjectPool() : this(Environment.ProcessorCount+1) { | 25 protected ObjectPool() : this(Environment.ProcessorCount+1) { |
| 26 | 26 |
