18.2.94. shmem_int_inc
shmem_int4_inc(3), shmem_int8_inc(3), shmem_int_inc(3), shmem_long_inc(3), shmem_longlong_inc(3) - 这些例程 对远程数据对象执行原子递增操作。
18.2.94.1. 概述
C或C++:
#include <mpp/shmem.h>
int shmem_int_inc(int *target, int pe)
long shmem_long_inc(long *target, int pe)
long long shmem_longlong_inc(long long *target, int pe)
Fortran语言:
INCLUDE "mpp/shmem.fh"
INTEGER pe
INTEGER(KIND=4) SHMEM_INT4_INC, target4
INTEGER(KIND=8) SHMEM_INT8_INC, target8
ires4 = SHMEM_INT4_INC(target4, pe)
ires8 = SHMEM_INT8_INC(target8, pe)
18.2.94.2. 描述
原子递增例程将target的值替换为其当前值加一。该操作必须在完成时确保不存在另一个进程在读取和更新之间修改target的可能性。
参数如下:
- target
需要在远程PE上更新的可远程访问的整数数据对象。目标类型应与SYNOPSIS部分中隐含的类型匹配。
- pe
一个整数,表示目标将被更新的PE编号。如果使用Fortran,它必须是一个默认的整数值。
18.2.94.3. 注意事项
术语"远程可访问"的定义见intro_shmem(3)。
18.2.94.4. 返回值
无。
另请参阅
intro_shmem(3)