如何在Java中使用单独的线程调用方法?

假设我有一个方法doWork()。我如何从单独的线程(不是主线程)中调用它。



慕桂英3389331
浏览 987回答 3
3回答

眼眸繁星

Thread t1 = new Thread(new Runnable() {    @Override    public void run() {        // code goes here.    }});  t1.start();要么new Thread(new Runnable() {     @Override     public void run() {          // code goes here.     }}).start();要么new Thread(() -> {    // code goes here.}).start();要么Executors.newSingleThreadExecutor().execute(new Runnable() {    @Override    public void run() {        myCustomMethod();    }});要么Executors.newCachedThreadPool().execute(new Runnable() {    @Override    public void run() {        myCustomMethod();    }});

蓝山帝景

在Java 8中,您可以使用一行代码来完成此操作。如果您的方法不带任何参数,则可以使用方法参考:new Thread(MyClass::doWork).start();否则,您可以在lambda表达式中调用该方法:new Thread(() -> doWork(someParam)).start();
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java