84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
在面试的时候,面试官提出了让比较ReentrantLock和Atomic两者的适用场景,欢迎各路大神前来解答。
Atomic による同期という意味ですか? 私の個人的な意見は次のとおりです:
Synchronized は ReentrantLock よりも早く Java 標準に組み込まれたため、最初は誰もがそれを使用していました。これは、Java がカプセル化されたミューテックス ロック メカニズムを提供するのと同等であり、ユーザーにとって、ロックがどのようにロック解除されているかに関係なく、同期済みとして宣言するとロック機能を取得できます。
AtomicはAtomicIntegerという意味ですよね?これにより、i++ などの関数をマルチスレッドで実装できるようになります。従来の int タイプ i++ はアトミック操作ではないため、これが最もよく使用されます。
Atomic
AtomicInteger
i++
int
Atomic による同期という意味ですか? 私の個人的な意見は次のとおりです:
Synchronized は ReentrantLock よりも早く Java 標準に組み込まれたため、最初は誰もがそれを使用していました。これは、Java がカプセル化されたミューテックス ロック メカニズムを提供するのと同等であり、ユーザーにとって、ロックがどのようにロック解除されているかに関係なく、同期済みとして宣言するとロック機能を取得できます。
ロックを取得できない場合にすぐに返す tryLock など、さらに多くの関数を提供します。
よりスケーラブル。スケーラビリティとは、ロック競合が発生したときにスケジューリングに費やす時間が短縮され、スループットが向上し、CPU をより効率的に使用できることを意味します
コード内で渡すことができる、より柔軟なロック オブジェクトです。-
Atomic
はAtomicInteger
という意味ですよね?これにより、i++
などの関数をマルチスレッドで実装できるようになります。従来のint
タイプi++
はアトミック操作ではないため、これが最もよく使用されます。