2

私はクラスとメソッドAを内部に持っています。methodA が何回、どこから、いつでも呼び出されたかを管理できる小さなプログラムを書きたいと思います。通常の変数でこれができると思うので、どれだけやればよいかわかりません。ファイルやデータベースを使った実装でこれができると思いますが、あまり良くありません。

誰でも私に提案を教えてもらえますか? ありがとう。

4

2 に答える 2

0

methodA() がマルチスレッドから同時に呼び出される可能性がある場合、AtomicInteger が必要になる場合があります

public class SomeClass {
  protected static AtomicInteger counter = new AtomicInteger(0);

  public void methodA() {
    counter.incrementAndGet();
  }
}

この投稿では、「++」がスレッドセーフではない理由と対処方法を紹介します。

于 2013-07-15T03:01:31.327 に答える