我对 Java 还很陌生,我的项目需要在用户每次按下按钮时创建一个新线程。我使用过 MVC 和 Swing,但我正在尝试找到一种方法来创建用户需要的任意数量的线程。我查看了一些信息并尝试使用 arrayList 来收集所有线程。但是我遇到了一些问题:
private ThreadLibrary thread_lib = new ThreadLibrary();
public TestArray(int val) {
for (int i=0; i < val; i++) {
thread_lib.addThread( new Thread(new runThread()).start() );
}
}
由于 new 运算符不返回任何内容,因此不会向 arrayList 添加任何内容。有什么想法或更好的数据结构可以使用吗? 谢谢
最佳答案
new
肯定会返回您正在构造的任何内容。它是返回 void
的 start
方法。尝试将线程对象存储在变量中并单独启动它。
public TestArray(int val) {
for (int i = 0; i < val; i++) {
Thread thread = new Thread(new runThread());
thread.start();
thread_lib.addThread(thread);
}
}
关于java - Java中多线程的实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5838819/