||All data added is initially stored in the input buffer. The processing threads remove this data from the input buffer for processing.
||Similarly, all results are written to the output buffer. The application must remove results from the buffer to prevent it from becoming full.
||Every item of data - once it's been removed from the input buffer and acquired by a processing thread - is stored internally in blocks along with other items of data.
||When a block is full, it's added to the fast cache. When the cache becomes full (if the cacheLimit is not 0) then archiving will begin.
||When the memory usage of the running process exceeds the threshold, blocks will be moved from memory to the temporary disk paging file.
||The compression level can be 0 for disabled, or 1 (fastest compression) to 9 (slowest/best compression).
||The encryption key size can be 128, 192, or 256. Encryption of memory-resident data should not normally be required, but can be enabled if necessary.