如何变量可以管理所有客户端请求

时间:2013-07-15 02:12:51

标签: java

我有一个类,里面有一个方法A. 我想编写一个小程序,可以管理methodA从任何地方,任何时间调用多少次。 我不知道要做多少,因为我认为一个正常的变量可以做到这一点。我认为使用文件或数据库的实现可以做到这一点,但它不是那么好。

谁能告诉我这个建议?感谢。

2 个答案:

答案 0 :(得分:1)

您需要在类中使用包含methodA()的静态变量。

class someClass {
    public static int counter = 0;
    void methodA() {
        counter++;
        //other code
    }
 }

现在每次调用methodA时,计数器都会增加。我将其公开,以便您可以随时直接从任何课程访问它,以查看已调用methodA()的次数。

答案 1 :(得分:0)

如果可以同时从多线程调用methodA(),那么我们可能需要一个AtomicInteger

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

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

This post介绍为什么“++”不是线程安全的,以及如何处理。