WaitHandle
と複数のスレッドで使用される他の同期オブジェクトはvolatile
と宣言する必要がありますか?WaitHandle(s)volatileが宣言されるべきですか?
答えて
volatile
は、フィールドを再割り当てする場合にのみ有効です。
EventHandlerの場合、compiler will handle thread-safety;あなたはそれについて心配するべきではありません。
他の同期オブジェクトの場合は、最初に変数を再割り当てするべきではありません(おそらく)。 (突然変異と同じではありません)
readonly
を使用してください。volatile
ではありません。
@Xaqronによって投稿された前回の最近の質問から、彼らはスレッドの問題を抱えていて、" suck it and see "メソッドで解決しようとしていることを意味しました。 –
@Mitch:これはその質問(ロガー)に関するものではありません – Xaqron
@Xaqron:いいえ。両方の質問は本質的にスレッディングとその不明瞭さに関するものです。 –
- 1. アクターメッセージはどこで宣言されるべきですか?
- 2. libgit2 GIT_BUF_INITは宣言されていません。それはどこで宣言されるべきですか?
- 3. SHOULDプロトコルは迅速に宣言されるべきですか?
- 4. AtomicReferenceをvolatileとして宣言する必要がありますか?
- 5. クラスフィールドはC++でどのように宣言されるべきですか?
- 6. var宣言でエラーが予想される宣言
- 7. C++ - スレッドに渡されるデータはvolatileであるべきですか?
- 8. インスタンス変数をvolatileとして宣言すると、このクラスのオブジェクトはvolatileになりますか?
- 9. PHP7で異なる宣言でメソッドが上書きされる
- 10. インタフェース定義時に例外を宣言するか、宣言するべきではありませんか?
- 11. Swift - 'View Controller'の宣言で期待される宣言
- 12. パペット重複宣言:クラス[Mongodb]は既に宣言されています。再宣言できません
- 13. エクスターナル・テンプレート:宣言が宣言されていないもの
- 14. PHPで宣言されたクラス宣言を含むクラス宣言PHPコードスニファ
- 15. WaitHandleでのキャンセル
- 16. シャットダウン-sが実行されているときを調べる
- 17. C++フォワード宣言を使用すべきですか?
- 18. Stringを宣言する利点は何ですか?s = new String( "abc")。intern();オーバーストリングs = "abc"(またはその逆)
- 19. スレッドWaitHandle
- 20. OOD - 現在のクラスで宣言されているプロパティが継承されいるかを調べるた対
- 21. UML - メソッドでクラスインスタンスが宣言されたときの関係
- 22. Objective Cのインスタンス変数、なぜそれらを宣言すべきですか?
- 23. UITableViewCellクラスで期待される宣言
- 24. 宣言されたすべてのクラスのPHPの表示名ですか?
- 25. スーパークラスとして宣言されたインスタンスのサブクラスタイプを調べる
- 26. 配列やスタックを宣言するときに二重リンクリストを宣言できるクラスがありますか?
- 27. 多くの関数で使用される変数をメンバ変数として宣言すべきですか?
- 28. なぜGADBannerViewが宣言されていないのですか?
- 29. なぜ 'EINTR'が宣言されていないのですか?
- 30. typedef宣言で__attribute__((__packed__))が無視されますか?
@Xaqron :これは間違った方法ではありませんが、あなたがその質問をしているということは、間違ったことをしている可能性があることを意味します... –
実際には、 。もしスレッドが 'WaitOne()'に行くと、別のスレッド 'Set()'はオブジェクトを返しますか? – Xaqron
@Xaqron:揮発性イベントハンドラの例を見たことがありますか? –