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 |