version 1.1, 2012/05/30 22:47:49
|
version 1.3, 2015/04/20 18:19:49
|
|
|
**============================================================================== | **============================================================================== |
*/ | */ |
| |
#define BATCH_MAX_PAGES 64 |
#define BATCH_MAX_PAGES INFINITE |
| |
#define BATCH_INITIALIZER { NULL, NULL, NULL, 0, BATCH_MAX_PAGES } | #define BATCH_INITIALIZER { NULL, NULL, NULL, 0, BATCH_MAX_PAGES } |
| |
|
|
| |
/* If non-zero, this page may be independenty released (contains | /* If non-zero, this page may be independenty released (contains |
* a single block). If so, then passing it to Batch_Put() will | * a single block). If so, then passing it to Batch_Put() will |
* pass this block to free(). Otherwise, calling Batch_Put() |
* pass this block to PAL_Free(). Otherwise, calling Batch_Put() |
* has no effect. | * has no effect. |
*/ | */ |
unsigned int independent:1; | unsigned int independent:1; |
| |
/* Size of the allocation */ |
/* Size of the allocation (not including page header) */ |
unsigned int size:31; | unsigned int size:31; |
} | } |
s; | s; |
|
|
Batch* self, | Batch* self, |
void* ptr); | void* ptr); |
| |
MI_Char* Batch_Zdup( |
_Check_return_ |
|
ZChar* Batch_Tcsdup( |
Batch* self, | Batch* self, |
const MI_Char* str); |
const ZChar* str); |
| |
|
_Check_return_ |
char* Batch_Strdup( | char* Batch_Strdup( |
Batch* self, | Batch* self, |
const char* str); | const char* str); |
| |
MI_Char* Batch_Strdup2( |
#if defined(CONFIG_ENABLE_WCHAR) |
|
ZChar* Batch_StrTcsdup( |
Batch* self, | Batch* self, |
const char* str); | const char* str); |
|
#else |
|
MI_INLINE ZChar* Batch_StrTcsdup( |
|
Batch* self, |
|
const char* str) |
|
{ |
|
return Batch_Strdup(self, str); |
|
} |
|
#endif |
|
|
|
#if defined(CONFIG_ENABLE_WCHAR) |
|
char* Batch_ZStrdup( |
|
Batch* self, |
|
const ZChar* str); |
|
#else |
|
MI_INLINE char* Batch_ZStrdup( |
|
Batch* self, |
|
const ZChar* str) |
|
{ |
|
return Batch_Strdup(self, str); |
|
} |
|
#endif |
| |
/* protocol support */ | /* protocol support */ |
typedef struct _Header_BatchInfoItem | typedef struct _Header_BatchInfoItem |