私が書いたコードを Mac OS X から Linux に移植しようとしていますが、OSX のみの適切な代替品を見つけるのに苦労していますOSAtomic.h
。gcc__sync*
ファミリーを見つけましたが、私が持っている古いコンパイラ/カーネルと互換性があるかどうかはわかりません。GCC v4.1.2 およびカーネル 2.6.18 で実行するコードが必要です。
私が必要とする特定の操作は次のとおりです。
- インクリメント
- デクリメント
- 比較して交換
奇妙なのはlocate stdatomic.h
、Linux マシンで実行するとヘッダー ファイル (c++ ディレクトリ内) が見つかるのに対し、私の OSX マシン (gcc v4.6.3) で同じコマンドを実行しても何も返されないことです。stdatomic ライブラリを入手するには何をインストールする必要がありますか? gcc v 4.1.2 で動作しますか?
ちなみに、サードパーティのライブラリは使用できません。