Mercurial > pub > ImplabNet
annotate Implab/ObjectPoolWrapper.cs @ 83:397fe8db0806 v2
fixed object pool
author | cin |
---|---|
date | Mon, 29 Sep 2014 15:49:15 +0400 |
parents | 0363407ee75c |
children | 34bb2f32634d |
rev | line source |
---|---|
82 | 1 using System; |
2 | |
3 namespace Implab { | |
4 public struct ObjectPoolWrapper<T> : IDisposable { | |
5 readonly T m_value; | |
6 readonly ObjectPool<T> m_pool; | |
7 | |
8 internal ObjectPoolWrapper(T value, ObjectPool<T> pool) { | |
9 m_value = value; | |
10 m_pool = pool; | |
11 } | |
12 | |
13 public T Value { | |
14 get { return m_value; } | |
15 } | |
16 | |
17 #region IDisposable implementation | |
18 public void Dispose() { | |
19 m_pool.Release(m_value); | |
20 } | |
21 #endregion | |
22 } | |
23 } | |
24 |