名前空間
変種
操作

C++ 属性: optimize_for_synchronized (TM TS)

From cppreference.com
< cpp‎ | language‎ | attributes
 
 
C++言語
全般
フロー制御
条件実行文
if
繰り返し文 (ループ)
for
範囲for (C++11)
ジャンプ文
関数
関数宣言
ラムダ式
inline指定子
動的例外仕様 (C++17まで*)
noexcept指定子 (C++11)
例外
名前空間
指定子
const/volatile
decltype (C++11)
auto (C++11)
constexpr (C++11)
consteval (C++20)
constinit (C++20)
記憶域期間指定子
初期化
代替表現
リテラル
ブーリアン - 整数 - 浮動小数点数
文字 - 文字列 - nullptr (C++11)
ユーザー定義 (C++11)
ユーティリティ
属性 (C++11)
typedef宣言
型エイリアス宣言 (C++11)
キャスト
メモリ確保
クラス
クラス固有の関数プロパティ
explicit (C++11)
static

特殊メンバ関数
テンプレート
その他
 
 
属性
(C++23)
(C++11)(C++26 まで)
(C++14)
(C++20)
(C++17)
(C++11)
optimize_for_synchronized
(TM TS)
(C++20)
 

synchronized 文からの呼び出しのために、関数定義が最適化されることを示します。

目次

[編集] 構文

[[optimize_for_synchronized]]

[編集] 説明

関数宣言で宣言される名前に適用されます。その名前は、関数の最初の宣言である必要があります。

関数定義がsynchronized 文からの呼び出しのために最適化されることを示します。特に、ほとんどの呼び出しでトランザクションセーフであるが、すべての呼び出しでそうではない関数を呼び出す synchronized ブロックのシリアライズを回避します。

[編集]

[編集] 参考文献

  • Transactional Memory TS (ISO/IEC TS 19841:2015)
  • 7.6.6 synchronized ブロックでの最適化のための属性 [dcl.attr.sync]
English 日本語 中文(简体) 中文(繁體)