私は1つのメソッドを保持するsinlgetonオブジェクトを持っていますが、魔法使いは同期していません。シングルトンは一度に多くのクライアントからアクセスできます。複数のクライアントがそのオブジェクトにアクセスするとどうなりますか?オブジェクト参照は先着順で提供されますか...つまり、最初のクライアントが最初にオブジェクトを終了するのを待たなければなりませんか、またはメモリ内に同じオブジェクト参照が与えられますか?Javaでのシングルトンの同時アクセス
同期されていないシングルトンのメソッドについて、私は奇妙な気持ちになります。 2人のクライアントが異なるパラメータでSingleton.method(param)を呼び出すと、互いの問題が発生することはありませんか?
ありがとうございました。しかし、メモリに2つのオブジェクトがない場合(シングルトンのために)、スタック上に同じクラスの2つのメソッドがあるという点はまだ分かりませんでしたか? – WinOrWin
シングルトンオブジェクト(そのインスタンスフィールド)はヒープ上にあります。シングルトンオブジェクトメソッドのコードは、PermGenメモリにあります(オブジェクトではなく、ロードされたクラスごとに1回)。メソッドのパラメータは、すべてのスレッドのローカルでスタックに渡されます。 3つの異なるメモリの場所、私はあなたがそれらについてもっと読むことをお勧めします。 –