perf: 优化user_data结构体的内存分配与释放
This commit is contained in:
@@ -63,12 +63,6 @@ static void user_data_destory(struct user_data *data)
|
|||||||
{
|
{
|
||||||
if (data)
|
if (data)
|
||||||
{
|
{
|
||||||
if (data->vec.iov_base)
|
|
||||||
{
|
|
||||||
free(data->vec.iov_base);
|
|
||||||
data->vec.iov_base = NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
free(data);
|
free(data);
|
||||||
data = NULL;
|
data = NULL;
|
||||||
}
|
}
|
||||||
@@ -76,8 +70,8 @@ static void user_data_destory(struct user_data *data)
|
|||||||
|
|
||||||
static struct user_data *user_data_create(int buff_size)
|
static struct user_data *user_data_create(int buff_size)
|
||||||
{
|
{
|
||||||
struct user_data *data = (struct user_data *)calloc(1, sizeof(struct user_data));
|
struct user_data *data = (struct user_data *)calloc(1, sizeof(struct user_data) + buff_size * sizeof(char));
|
||||||
data->vec.iov_base = (void *)calloc(buff_size, sizeof(char));
|
data->vec.iov_base = (void *)data + sizeof(struct user_data);
|
||||||
data->vec.iov_len = buff_size;
|
data->vec.iov_len = buff_size;
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
|
|||||||
Reference in New Issue
Block a user