如何使用多线程并行运行两个实现类



我正在做一个项目,其中我有多个接口和两个需要实现这两个接口的实现类。

假设我的第一个接口是 -

public Interface interfaceA {
    public void abc() throws Exception;
}

它的实现是——

public class TestA implements interfaceA {
    // abc method
}

我是这样称呼它的——

TestA testA = new TestA();
testA.abc();

现在我的第二个界面是——

public Interface interfaceB {
    public void xyz() throws Exception;
}

它的实现是——

public class TestB implements interfaceB {
    // xyz method   
}

我是这样称呼它的——

TestB testB = new TestB();
testB.xyz();

问题陈述:-

现在我的问题是 - 有什么办法,我可以并行执行这两个实现类?我不想按顺序运行它。

意思是,我想并行运行TestATestB实现?这可能做到吗?最初我想使用 Callable,但 Callable 需要返回类型,但我的接口方法是无效的,所以不确定如何并行运行这两个方法。

Thread thread1 = new Thread(new Runnable() {
    public void run() {
        TestB testB = new TestB();
        testB.xyz();
    }
});
Thread thread2 = new Thread(new Runnable() {
    public void run() {
        TestA testA = new TestA();
        testA.abc();
    }
});
thread1.start();
thread2.start();

另一种方式 - 如果你有很多可运行的

ExecutorService service = Executors.newFixedThreadPool(10);
for (int i = 0; i < 10; i++) {
    service.submit(new Runnable() {
        public void run() {
        }
    });
}

相关内容

  • 没有找到相关文章

最新更新