---
title: 构造函数与析构函数
description: "| 产品 | 是否支持 |"
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/API/ascendcopapi/atlasascendc_api_07_0308.html
sourcePath: /source/zh/canncommercial/900/API/ascendcopapi/atlasascendc_api_07_0308.html
indexId: ccfa59cef838598da3c8c2e23504bd75468f18b6aa7bf0d2eea8f7ccdc1ec4ac76
---
# 构造函数与析构函数

#### 产品支持情况

| 产品 | 是否支持 |
| --- | --- |
| Atlas 350 加速卡 | √ |
| Atlas A3 训练系列产品 / Atlas A3 推理系列产品 | x |
| Atlas A2 训练系列产品 / Atlas A2 推理系列产品 | √ |
| Atlas 200I/500 A2 推理产品 | x |
| Atlas 推理系列产品 AI Core | x |
| Atlas 推理系列产品 Vector Core | x |
| Atlas 训练系列产品 | x |


#### 功能说明

用于创建KfcWorkspace对象，Kfc全称为kernel function call，表示核间通信调用。


#### 函数原型

```
class KfcWorkspace;
__aicore__ inline KfcWorkspace(GM_ADDR workspace)
__aicore__ inline ~KfcWorkspace()
```


#### 参数说明


**表1 KfcWorkspace构造函数参数说明**

| 参数 | 输入/输出 | 说明 |
| --- | --- | --- |
| workspace | 输入 | Global Memory上的消息空间地址，用户需保证地址对齐和清零。 |


#### 返回值说明

KfcWorkspace对象实例。


#### 约束说明

不能和REGIST_MATMUL_OBJ接口同时使用。使用资源管理API时，用户自主管理AIC和AIV的核间通信，REGIST_MATMUL_OBJ内部是由框架管理AIC和AIV的核间通信，同时使用可能会导致通信消息错误等异常。


#### 调用示例

```
AscendC::KfcWorkspace desc(workspaceGM);
```
