Пример #1
0
 /// <summary>
 /// Called to return a block to the pool. Once Return has been called the memory no longer belongs to the caller, and
 /// Very Bad Things will happen if the memory is read of modified subsequently. If a caller fails to call Return and the
 /// block tracking object is garbage collected, the block tracking object's finalizer will automatically re-create and return
 /// a new tracking object into the pool. This will only happen if there is a bug in the server, however it is necessary to avoid
 /// leaving "dead zones" in the slab due to lost block tracking objects.
 /// </summary>
 /// <param name="block">The block to return. It must have been acquired by calling Lease on the same memory pool instance.</param>
 public void Return(MemoryPoolBlock2 block)
 {
     block.Reset();
     _blocks.Push(block);
 }
Пример #2
0
 /// <summary>
 /// Called to return a block to the pool. Once Return has been called the memory no longer belongs to the caller, and
 /// Very Bad Things will happen if the memory is read of modified subsequently. If a caller fails to call Return and the
 /// block tracking object is garbage collected, the block tracking object's finalizer will automatically re-create and return
 /// a new tracking object into the pool. This will only happen if there is a bug in the server, however it is necessary to avoid
 /// leaving "dead zones" in the slab due to lost block tracking objects.
 /// </summary>
 /// <param name="block">The block to return. It must have been acquired by calling Lease on the same memory pool instance.</param>
 public void Return(MemoryPoolBlock2 block)
 {
     block.Reset();
     _blocks.Enqueue(block);
 }
Пример #3
0
 /// <summary>
 /// Called to return a block to the pool. Once Return has been called the memory no longer belongs to the caller, and
 /// Very Bad Things will happen if the memory is read of modified subsequently. If a caller fails to call Return and the
 /// block tracking object is garbage collected, the block tracking object's finalizer will automatically re-create and return
 /// a new tracking object into the pool. This will only happen if there is a bug in the server, however it is necessary to avoid
 /// leaving "dead zones" in the slab due to lost block tracking objects.
 /// </summary>
 /// <param name="block">The block to return. It must have been acquired by calling Lease on the same memory pool instance.</param>
 public void Return(MemoryPoolBlock2 block)
 {
     block.Reset();
     _blocks.Push(block);
 }
Пример #4
0
 /// <summary>
 /// Called to return a block to the pool. Once Return has been called the memory no longer belongs to the caller, and
 /// Very Bad Things will happen if the memory is read of modified subsequently. If a caller fails to call Return and the
 /// block tracking object is garbage collected, the block tracking object's finalizer will automatically re-create and return
 /// a new tracking object into the pool. This will only happen if there is a bug in the server, however it is necessary to avoid
 /// leaving "dead zones" in the slab due to lost block tracking objects.
 /// </summary>
 /// <param name="block">The block to return. It must have been acquired by calling Lease on the same memory pool instance.</param>
 public void Return(MemoryPoolBlock2 block)
 {
     block.Reset();
     _blocks.Enqueue(block);
 }