回答 受付中

JAVAのスレッドセーフとは

  • 困ってます
  • 質問No.9625372
  • 閲覧数138
  • ありがとう数1
  • 気になる数0
  • 回答数2

お礼率 84% (45/53)

スレッドセーフについて質問です。
インスタンス変数はヒープ領域に保持されるのでスレッドセーフではないという説明は分かりました。
しかし、そうするとDTOのようにgetterとsetterを持ってるクラスはインスタンス変数ばかりなので、スレッドセーフではないということになるのでしょうか?
スレッドセーフなDTOを作りたいときは、どのようにすれば良いのでしょうか?

回答 (全2件)

  • 回答No.2

ベストアンサー率 28% (1355/4761)

Java カテゴリマスター
ThreadLocalを用いるという手はなくもないです。
  • 回答No.1

ベストアンサー率 38% (3083/8006)

コンピューター カテゴリマスター
Singleton にする
補足コメント
hiroko_ig

お礼率 84% (45/53)

Singletonを作りましたが、DTOのインスタンスが1つしか出来ないので使えないことが分かりました。
スレッドセーフというのはそういう意味ではなくて、複数のスレッドで動いても問題が起きないということです。
投稿日時 - 2019-06-14 18:56:57
お礼コメント
hiroko_ig

お礼率 84% (45/53)

ありがとうございます。
Singletonというのがあるのですね。
調べて何となく理解出来ました。
DTOに何百件もデータを入れるので、スレッドセーフじゃないとデータが書き換えられてしまうのではないかと思いました。
Singletonで作るようにしてみます。
投稿日時 - 2019-06-13 09:48:17
関連するQ&A
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,600万件のQ&Aを分析して最適な回答をご提案します。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する

ピックアップ

ページ先頭へ