複数のCPUでプログラムを動かすとき両方のプログラムで共有する変数にはvolatileを付けてもよいのでしょうか
https://oshiete.goo.ne.jp/qa/9459084.html のNo.2の回答において複数スレッドからの使用を想定していないということですが複数CPUの場合は使用できますか
あるいはvolatile以外の方法で変数を共有するにはどうしたらよいのでしょうか
考えがまとまっていませんが回答をいただきながら整理しようと思います
No.1ベストアンサー
- 回答日時:
volatileは低レベル機能で基本的にOSカーネルとかデバイスドライバとか書く場合に使うもので、アプリケーションで気軽に使うものではありません。
まずキャッシュもできないのでアクセスするたびにプログラムの速度に大幅なブレーキがかかります。
基本的に複数スレッドから変数を共有するようなプログラムは書かないことです。特に複数スレッドから書き込める変数は同期と整合性の確保が大変で性能にも悪影響が出ます。
プロセス/スレッド間でデータのやり取りが必要ならOSのプロセス間通信機能を使いましょう。同期が必要ならOSの同期機能を使いましょう。
回答ありがとうございます
大変よくわかりました、ありがとうございます
今回は複数のCPUのプログラムなのでvolatileを付けようと思います
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Excel VBA 大量のレコードからある列の重複数をカウントする方法?拡張編 7 2022/08/22 13:43
- その他(パソコン・周辺機器) 2つのPCを行き来する 2 2022/06/15 01:59
- 数学 複素関数にロピタルの定理を使おうとしている回答者は、複素関数論はおろか微積分学もよく分かっていない、 5 2022/12/28 18:02
- 中古パソコン ツールをずっと起動させておくだけのPC 2 2022/06/10 02:10
- 工学 1つのタクトスイッチで複数の並列回路を閉じ、アースにつなげることができるスイッチはありますか。 2 2022/08/06 10:38
- Excel(エクセル) エクセル関数の変わった使い方 3 2022/05/13 17:12
- CPU・メモリ・マザーボード PCスペック(CPUとGPUのバランス)について ボトルネックチェッカー (https://babl 3 2022/10/30 15:33
- 物理学 内積 3 2022/12/04 18:41
- 英語 複数形を含む単語がハイフンで繋がれ形容詞化した表現の文法規則について 2 2022/12/13 12:17
- その他(学校・勉強) この中で間違ってある説明はありますか?詳しい方に教えていただきたいです。 A. 1つのプログラムが複 2 2023/07/14 01:15
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
インクリメント演算子のみを用...
-
スポーツ施設での出来事で心配...
-
Vba 実数および実数タイプの変...
-
あるプログラムのコマンドライ...
-
PICマイコンのコピー(クローン...
-
Excelで4096点以上のFFTの方法
-
Notepad++の関数リスト表示でC...
-
VisualBasic2008の非ユーザーコ...
-
転職・プログラマー 未経験者...
-
エクセルVBA 検索時に除外を設...
-
テキストボックスのエンターキ...
-
XnViewにwebpを「いつも開く」...
-
プログラムに必要な数学本
-
C言語で円周率を求めるプログラ...
-
Buffonの針
-
C言語でヒストグラムを作成する...
-
自動クエリとはどういうもので...
-
「Outlookが他のプログラムによ...
-
CreateObject関数について
-
等差数列の和を求めるプログラム
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
あるプログラムのコマンドライ...
-
Excelで4096点以上のFFTの方法
-
「Outlookが他のプログラムによ...
-
Excelに埋め込んだVBAのプログ...
-
VBAにてメール作成した際、一部...
-
Notepad++の関数リスト表示でC...
-
自動クエリとはどういうもので...
-
読み込み中にアクセス違反が発...
-
PICマイコンのコピー(クローン...
-
XnViewにwebpを「いつも開く」...
-
未使用の変数を一括検索する方法
-
VBAでユーザーフォームが自動的...
-
UWSCで指定のフォルダを開きたい。
-
パックマンプログラム
-
このプログラミング誰か教えて...
-
モジュール、アプリケーション...
-
Vba UserFormを前面に出す方法...
-
特定のwebサイトのタイトルや記...
-
ドロップダウンリストの文字を...
-
テキストボックスのエンターキ...
おすすめ情報