如何创建多线程
2021-04-08 22:26
标签:线程池 主线程 alt sys read ati tor execution exec 1.继承 Thread类,并重写run()方法: 2.实现Runnable接口,并重写run()方法: 3.使用内部类: 4.可以带返回结果的线程Callable: 但是这种方式的话因为要等待子线程返回结果,所以你它的用时跟直接一个方法走没啥区别。 5.线程池: 如何创建多线程 标签:线程池 主线程 alt sys read ati tor execution exec 原文地址:https://www.cnblogs.com/LinTianwen/p/13376646.htmlpublic class Thread001 extends Thread{
@Override
public void run() {
System.out.println(Thread.currentThread().getName()+"我是子线程");
}
public static void main(String[] args) {
System.out.println(Thread.currentThread().getName()+"我是主线程");
new Thread001().start();
}
}
public class Thread002 implements Runnable{
public void run() {
System.out.println(Thread.currentThread().getName()+"我是子线程1");
}
public static void main(String[] args) {
new Thread(new Thread002()).start();
}
}
public class Thread0022{
public static void main(String[] args) {
//写法1
new Thread(new Runnable() {
public void run() {
System.out.println(Thread.currentThread().getName()+"我是子线程1");
}
}).start();
//写法二:使用lambda表达式
new Thread(() -> System.out.println(Thread.currentThread().getName()+"我是子线程2")).start();
}
}
public class MyCallback implements Callable
public class Thread003 {
public static void main(String[] args) {
ExecutorService executorService = Executors.newCachedThreadPool();
executorService.execute(new Runnable() {
@Override
public void run() {
System.out.println("我是"+Thread.currentThread().getName()+"线程池1");
}
});
//写法2:使用lambda表达式
executorService.execute(() -> System.out.println("我是"+Thread.currentThread().getName()+"线程池2"));
}
}
上一篇:JavaScripts语法速查
下一篇:Java-访问权限