ACIMemoryAlloc()¶
-
ACIMemoryAlloc()¶
作用:
分配内存空间
语法:
sword ACIMemoryAlloc(void * hndl,
ACIError * err,
void ** mem,
ACIDuration dur,
ub4 size,
ub4 flags);
参数:
- hndl
ACIEnv句柄或者ACISession句柄
- err
ACIError句柄
- mem
要分配内存的缓冲区
- dur
取值在下列值中:
OCI_DURATION_CALLOUT
OCI_DURATION_STATEMENT
OCI_DURATION_SESSION
OCI_DURATION_PROCESS
此处该值需要和hndl配合使用,使用规则:
env句柄只能搭配OCI_DURATION_PROCESS使用,其余则失败
session句柄则不能和OCI_DURATION_PROCESS搭配使用,其余则成功
- size
要分配的内存的大小
此处有一个分配规则:
size为0时:直接失败
size能被8整除时:alloc出来的size大小为:16 + ((n / 8) - 1) * 8
size不能被8整除时:alloc出来的size大小为:16 + (n / 8) * 8
- flags
当前只能取值:ACI_MEMORY_CLEARED