0

これは私の最初の質問なので、私に優しくしてください。

別々の CPU コアで実行されている 2 つのスレッド (t1 と t2 など) が、共有オブジェクトの同期メソッドを同時に (つまり、同じナノ秒/プロセッサ サイクルで) 呼び出すとどうなるでしょうか? ロックは、アーキテクチャのどの要素によってどのように解決されますか?

当たり前の質問のように思えるかもしれませんが、インターネット上で何も見つかりませんでした。ありがとう!

4

2 に答える 2

1

最近では、これは実際にはハードウェアで実現されているため、プロセッサには多くのアクセスから 1 つのスレッドを許可する特別な命令があります。これは、前世紀の純粋なソフトウェアベースのソリューションから進化したものであり、最近の最先端は AtomicInteger が表すものです: スレッドセーフであることが保証されているが、決してブロックしない単一の可変整数です。

例: Intel Haswell アーキテクチャ.

于 2013-11-14T17:44:29.233 に答える