同时运行多个线程
2022-09-04 00:40:15
大家好,对于同时运行多个线程,建议从一个类创建不同的线程对象,或者创建两个类,其中一个实现可运行,另一个实现线程,然后根据需要从这两个类创建线程对象,假设我们尝试同时运行7-10个任务。
- 什么是最好的解决方案?..
- 如果从单个类创建不同的线程对象,是否有任何陷阱或性能损失?
谢谢。提示一如既往地受到赞赏。
大家好,对于同时运行多个线程,建议从一个类创建不同的线程对象,或者创建两个类,其中一个实现可运行,另一个实现线程,然后根据需要从这两个类创建线程对象,假设我们尝试同时运行7-10个任务。
谢谢。提示一如既往地受到赞赏。
java.util.concurrent
下面是一个简短示例:
private static class SomeTask implements Runnable
{
@Override
public void run()
{
doSomething();
}
}
public static void main(String[] args)
{
ExecutorService executor = Executors.newCachedThreadPool();
for (int i = 0; i < 8; i++) executor.execute(new SomeTask());
}
我个人会选择选项(1)(创建同一类的2个不同线程)。
我不认为需要为这项工作创建2个不同的类,这些类可以由同一类的2个不同线程完成。