私はネットで書いています。私は魔法使いのリストを持っています。私はアイテムを絶対に削除しないでリンクリストを追加することができます。このリストは他の方法では決して変更されないが、そのリストに追加されていることを知っている場合、この場合のロック(リストに追加しようとするとロックが使用されます)?リンクされたリストスレッドセーフ?
4
A
答えて
3
いいえ安全ではありません。 LinkedListはスレッドセーフなクラスではありません。 LinkedListのためにのみサポートされているマルチスレッドのシナリオは、複数のリーダ
6
なしです。多くの読者と1人の作家をサポートするために(コメントはJaredの返答に)、ReaderWriterLockSlim
を参照してください。作家は排他的アクセスが必要です。読者は協力することができます。これはReaderWriterLockSlim
の機能です。また、ReaderWriterLock
は3.5です。
try/finallyを使用して手動で入力/終了などを手動で処理する必要があります。
関連する問題
- 1. リンクされたリストメモリ
- 2. リンクされたリストクラス
- 3. リンクされたモデルはcakephp 2.0でリンクされたデータを返さない
- 4. ajaxとリンクされたリソース
- 5. リンクされたリストJava
- 6. リンクされたリストとイテレータ
- 7. リンクされたリスト配列
- 8. リンクされたリスト - ポインタ
- 9. Cのリンクされたリスト
- 10. リンクされたリストのオブジェクト
- 11. リンクされたリストExaplanation
- 12. リンクされたメジャーグループとローカルディメンション
- 13. リンクされたサーバーのプロファイリング
- 14. リンクされたリストとポインタ
- 15. Cでリンクされたリスト
- 16. Cでリンクされたリストプログラム
- 17. リンクされたリストコピー/セマンティックC++
- 18. リンクされたリストのヘッドノード
- 19. Eclipse - リンクされたパッケージ?
- 20. ExtJSフォーム:リンクされたComboxes
- 21. 配列またはリンクされたリスト
- 22. リンクされたテーブルまたはサブクエリ?
- 23. mxmlcにリンクされたリンクとリンクされていないリンクがありますか?
- 24. C++リンクされたリストにソートされた順に追加
- 25. ネストされたリンクされたデータを取得し、CakePHPの(2.1.0)
- 26. MS Accessバインドされたコンボボックスがテーブルにリンクされたフォーム
- 27. 公開されたアクションとopengraphのリンク
- 28. 更新されたリンクのウェブマスターツールエラー
- 29. リンクが削除されたdrupalテーブル
- 30. リンクされたデータソースにファイルアイコンを表示
よくあること私はそれを少し筆記してしまった場合、すごく悲しいです。多くの読者と唯一の作家...それは安全か、少なくとも1人の作家しかいないでしょう。 – Peter
@Petoj - 書き込みが1つのスレッドに限定されていても、書き込みは書き込み側と同時に安全ではありません。 –