如何在Java中实现一个实现Runnable的对象的方法?

我有一个名为OBJ的对象,它实现了Runnable.
它有一些成员,一个构造函数,一个run()方法和一个特定计数的getter(其中一个成员).
在我的main方法中,我有一个线程数组,每个线程都是一个新的OBJ,每个线程都在run()方法中进行一定的计算并将其保存在计数中.

现在,我想要另一个循环(除了我已经启动了所有线程的循环),并且每个线程等待它完成,然后使用count getter来计算我从中得到的所有计数线程.

如何通过线程到达getter?

解决方法:

好吧,在到达线程循环之前创建OBJ实例:

List<OBJ> objects = new ArrayList<OBJ>();
// Create your objects here
for (int i = 0; i < NUM_OF_OBJ; ++i) {
   objects.add(new OBJ());
}

// Run the threads
List<Thread> threads = new ArrayList<Thread>();
for (int i = 0; i < NUM_OF_OBJ; ++i) {
   Thread t = new Thread(objects.get(i));
   threads.add(t);
   t.start();
}

// Wait for the threads to finish
for (Thread t : threads) {
    t.join();
}

// Sum all counts
int sum = 0;
for (OBJ object : objects) {
   sum += object.getCount();
}
上一篇:C#属性getter返回新对象的最佳做法是什么?


下一篇:尽管删除了getter,Javascript也不会让我设置只有getter的属性