鲲鹏社区首页
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

kupl_egroup_return

src egroup向dest egroup归还executors。

接口定义

int kupl_egroup_return(kupl_egroup_h dest, kupl_egroup_h src);

参数

参数名

类型

描述

输入/输出

dest

kupl_egroup_h

被归还executor的egroup

输入/输出

src

kupl_egroup_h

需要归还executor的egroup

输入/输出

返回值

  • 成功:返回被归还executor后的dest egroup大小
  • 失败:返回KUPL_ERROR

示例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <stdio.h> 
#include "kupl.h" 
   
 int main() 
 { 
         int executor_num = kupl_get_num_executors(); 
         int n1 = executor_num/2; 
         int n2 = executor_num - executor_num/2;
         int executors1[n1], executors2[n2]; 
         for (int i =0; i < n1; i++) {
             executors1[i] = i;
         } 
         for (int i =0; i < n2; i++) {
             executors2[i] = i + n1;
         } 
         kupl_egroup_h egroup1 = kupl_egroup_create(executors1, n1); 
         kupl_egroup_h egroup2 = kupl_egroup_create(executors2, n2); 
         printf("egroup2 : %d executors\n", n2); 
         n1 = kupl_egroup_borrow(egroup1, egroup2); 
         n2 = kupl_egroup_return(egroup2, egroup1); 
         printf("egroup2 : %d executors\n", n2); 
         kupl_egroup_destroy(egroup1); 
         kupl_egroup_destroy(egroup2); 
         return 0; 
 }

运行结果如下。

egroup2 : 2 executors
egroup2 : 4 executors

上述示例演示了创建的egroup1取用egroup2中executor后,重新向egroup2归还所有executor的流程,运行结果打印了最开始与取用、归还后egroup2中的executor数量,最终kupl_egroup_return函数将egroup1中所有executor都归还给了egroup2。