TPCircularBuffer 的使用
环形缓冲区使用介绍
1. 加入
bool _TPCircularBufferInit(TPCircularBuffer *buffer, int32_t length, size_t structSize) {
long page_size;
int32_t req_size;
char *base;
assert(length > 0);
if ( structSize != sizeof(TPCircularBuffer) ) {
printf("TPCircularBuffer: Header version mismatch. Check for old versions of TPCircularBuffer in your project\n");
abort();
}
// Get the system page size one way or the other.
#ifdef _SC_PAGESIZE
page_size = sysconf( _SC_PAGESIZE );
#else
page_size = getpagesize();
#endif
req_size = ((length + (page_size - 1))