oceanbase
1/**
2* Copyright (c) 2021 OceanBase
3* OceanBase CE is licensed under Mulan PubL v2.
4* You can use this software according to the terms and conditions of the Mulan PubL v2.
5* You may obtain a copy of Mulan PubL v2 at:
6* http://license.coscl.org.cn/MulanPubL-2.0
7* THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
8* EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
9* MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
10* See the Mulan PubL v2 for more details.
11*/
12
13#include "ob_uniq_task_queue.h"
14namespace oceanbase
15{
16namespace observer
17{
18void *ObHighPrioMemAllocator::alloc(const int64_t sz)
19{
20void *mem = NULL;
21int ret = common::OB_SUCCESS;
22if (sz > 0) {
23mem = common::ob_malloc(sz, attr_);
24if (NULL == mem) {
25ret = common::OB_ALLOCATE_MEMORY_FAILED;
26SERVER_LOG(ERROR, "alloc memory failed", K(ret), K(sz), K_(attr_.label));
27}
28}
29return mem;
30}
31
32void ObHighPrioMemAllocator::free(void *p)
33{
34if (NULL != p) {
35common::ob_free(p);
36p = NULL;
37}
38}
39}
40}
41