Class RecyclingInt32BlockAllocator
A Int32BlockPool.Allocator implementation that recycles unused System.Int32 blocks in a buffer and reuses them in subsequent calls to GetInt32Block().
Note: this class is not thread-safe.
NOTE: This was RecyclingIntBlockAllocator in Lucene
Inherited Members
Namespace: Lucene.Net.Util
Assembly: Lucene.Net.dll
Syntax
public sealed class RecyclingInt32BlockAllocator : Int32BlockPool.Allocator
  Constructors
| Improve this Doc View SourceRecyclingInt32BlockAllocator()
Creates a new RecyclingInt32BlockAllocator with a block size of INT32_BLOCK_SIZE, upper buffered docs limit of DEFAULT_BUFFERED_BLOCKS.
Declaration
public RecyclingInt32BlockAllocator()
  RecyclingInt32BlockAllocator(Int32, Int32)
Creates a new RecyclingInt32BlockAllocator.
Declaration
public RecyclingInt32BlockAllocator(int blockSize, int maxBufferedBlocks)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Int32 | blockSize | The size of each block returned by this allocator.  | 
      
| System.Int32 | maxBufferedBlocks | Maximum number of buffered int blocks.  | 
      
RecyclingInt32BlockAllocator(Int32, Int32, Counter)
Creates a new RecyclingInt32BlockAllocator.
Declaration
public RecyclingInt32BlockAllocator(int blockSize, int maxBufferedBlocks, Counter bytesUsed)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Int32 | blockSize | The block size in bytes.  | 
      
| System.Int32 | maxBufferedBlocks | Maximum number of buffered int block.  | 
      
| Counter | bytesUsed | Counter reference counting internally allocated bytes.  | 
      
Fields
| Improve this Doc View SourceDEFAULT_BUFFERED_BLOCKS
Declaration
public const int DEFAULT_BUFFERED_BLOCKS = 64
  Field Value
| Type | Description | 
|---|---|
| System.Int32 | 
Properties
| Improve this Doc View SourceBytesUsed
Declaration
public long BytesUsed { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Int64 | The number of bytes currently allocated by this Int32BlockPool.Allocator.  | 
      
MaxBufferedBlocks
Declaration
public int MaxBufferedBlocks { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Int32 | The maximum number of buffered byte blocks.  | 
      
NumBufferedBlocks
Declaration
public int NumBufferedBlocks { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Int32 | The number of currently buffered blocks.  | 
      
Methods
| Improve this Doc View SourceFreeBlocks(Int32)
Removes the given number of int blocks from the buffer if possible.
Declaration
public int FreeBlocks(int num)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Int32 | num | The number of int blocks to remove.  | 
      
Returns
| Type | Description | 
|---|---|
| System.Int32 | The number of actually removed buffers.  | 
      
GetInt32Block()
NOTE: This was getIntBlock() in Lucene
Declaration
public override int[] GetInt32Block()
  Returns
| Type | Description | 
|---|---|
| System.Int32[] | 
Overrides
| Improve this Doc View SourceRecycleInt32Blocks(Int32[][], Int32, Int32)
NOTE: This was recycleIntBlocks in Lucene
Declaration
public override void RecycleInt32Blocks(int[][] blocks, int start, int end)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Int32[][] | blocks | |
| System.Int32 | start | |
| System.Int32 | end |