【发布时间】:2016-08-11 12:52:11
【问题描述】:
我想在一个新线程中创建一个计数器,该线程具有在线程运行时获取计数器值的方法。我怎样才能轻松地做到这一点?
【问题讨论】:
-
如果它只是一个计数器,你可以使用
AtomicInteger类型。
标签: java multithreading concurrency java.util.concurrent
我想在一个新线程中创建一个计数器,该线程具有在线程运行时获取计数器值的方法。我怎样才能轻松地做到这一点?
【问题讨论】:
AtomicInteger 类型。
标签: java multithreading concurrency java.util.concurrent
检查一下:
public class ThreadsExample implements Runnable {
static AtomicInteger counter = new AtomicInteger(1); // a global counter
public ThreadsExample() {
}
static void incrementCounter() {
System.out.println(Thread.currentThread().getName() + ": " + counter.getAndIncrement());
}
@Override
public void run() {
while(counter.get() < 1000){
incrementCounter();
}
}
public static void main(String[] args) {
ThreadsExample te = new ThreadsExample();
Thread thread1 = new Thread(te);
Thread thread2 = new Thread(te);
thread1.start();
thread2.start();
}
}
【讨论】: