atomic_fetch_add, atomic_fetch_add_explicit
提供:cppreference.com
|
|
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
| Defined in header <stdatomic.h>
|
||
| C atomic_fetch_add( volatile A* obj, M arg ); |
(1) | (C11以来) |
| C atomic_fetch_add_explicit( volatile A* obj, M arg, memory_order order ); |
(2) | (C11以来) |
アトミック
objの古い値にargの加算結果とobjによって指された値に置き換えられ、以前に開催された値objを返します。操作は、リード·モディファイ·ライト操作です。最初のバージョンの受注メモリがmemory_order_seq_cstに従ってアクセスし、2番目のバージョンの受注メモリはorderに従ってアクセス.Original:
Atomically replaces the value pointed by
obj with the result of addition of arg to the old value of obj, and returns the value obj held previously. The operation is read-modify-write operation. The first version orders memory accesses according to memory_order_seq_cst, the second version orders memory accesses according to order.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
これは、すべての原子オブジェクト·タイプに対して定義汎用関数です。
Aがアトミックオブジェクトの型である、MかA場合Aアトミック整数型であるか、またはptrdiff_tAアトミックれるポインタ型場合に対応する非原子型で.Original:
This is a 汎用関数 defined for all atomic object types.
A is the type of an atomic object, M is either the non-atomic type corresponding to A if A is atomic integer type, or ptrdiff_t if A is atomic pointer type.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
符号付き整数型の場合、演算は2の補数表現を使用するように定義されています。そこ
Original:
For signed integer types, arithmetic is defined to use two’s complement representation. There
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
未定義の結果がありません。ポインタ型の場合、結果は未定義アドレスかもしれませんが、操作はそうしないと未定義の動作を持っていない.
Original:
are no undefined results. For pointer types, the result may be an undefined address, but the operations otherwise have no undefined behavior.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[編集] パラメータ
| obj | - | 変更するアトミックオブジェクトへのポインタ
Original: pointer to the atomic object to modify The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
| arg | - | 原子オブジェクトに格納された値に追加する値
Original: the value to add to the value stored in the atomic object The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
| order | - | メモリ同期は、この操作の順序:すべての値が許可されています
Original: the memory synchronization ordering for this operation: all values are permitted The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
[編集] 値を返します
値は、以前
objが指すアトミックオブジェクトでなければ開催された.Original:
The value held previously be the atomic object pointed to by
obj.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[編集] も参照してください
| アトミック減算 Original: atomic subtraction The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (機能) | |
| C++ documentation for atomic_fetch_add, atomic_fetch_add_explicit
| |