Java线程
使用多线程的优点
背景:以单核CPU为例,只使用单个线程先后完成多个任务(调用多个方法),肯定比多个线程完成多个方法用的时间短,为何仍需要多线程?
多线程的优点
- 提高应用程序的响应。对图形化界面更有意义,可增强用户体验。
- 提高计算机系统CPU的利用率
- 改善程序结构。将既长又复杂的进程分为多个线程,独立运行,利于理解和修改。
何时需要多线程
- 程序需要同时执行两个或多个任务
- 程序需要实现一些需要等待的任务时,如用户输入、文件读写操作、网络操作和搜索等
- 需要一些后台运行的程序时
注意
-
要想启动线程,只能用start()方法:myThread.start();
-
要想调用多个线程,只能重新new一个对象
-
//创建Thread类的子类的对象 myThread t1 = new myThread(); myThread t2 = new myThread(); //通过此对象调用start();启动线程,调用当前线程的run() t1.start(); t2.start();
创建一个输出100以内的线程例子
/**
* 多线程的创建:方式一:继承于Thread类
* 1.创建一个继承于Thread类的子类
* 2.重写Thread类中的run()方法----->将此线程执行的方操作声明在run()中
* 3.创建Thread子类的对象
* 4.通过此对象调用start方法
*/
public class ThreadTest {
public static void main(String[] args) {
//创建Thread类的子类的对象
myThread t1 = new myThread();
//通过此对象调用start();启动线程,调用当前线程的run()
t1.start();
for (int i = 0; i < 100; i++) {
if(i%2 == 0){
System.out.println(Thread.currentThread().getName()+":"+ i + "*******main()********");
}
}
}
}
class myThread extends Thread{
public void run(){//输出100以内的偶数
for (int i = 0; i < 100; i++) {
if(i%2 == 0){
System.out.println(Thread.currentThread().getName()+":"+i);
}
}
}
}
版权声明:本文为weixin_42324146原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。