タグ

ブックマーク / blog.kengo-toda.jp (1)

  • Javaプログラマが読むべき7個のAPI実装 - Kengo's blog

    10周くらい遅れている感がありますが気にせず紹介します。なお実装はJDKによって異なる可能性があるので、お手元のJDKに付属しているコードをご覧になることをおすすめします。 java.util.concurrent.atomic.AtomicInteger ロックフリーでスレッドセーフな実装を実現ことで有名なjava.util.concurrent.atomicパッケージの代表格。そんなすごいことをどう実装しているのか?というのは誰もが1度は気になるはず。openjdk7のコードを読むとこんな感じです。 public final int incrementAndGet() { for (;;) { int current = get(); int next = current + 1; if (compareAndSet(current, next)) return next; } } C

    Javaプログラマが読むべき7個のAPI実装 - Kengo's blog
  • 1