java线程
2019/6/12 22:22:46
什么时候需要多线程?
当需要提高程序的反应速度时,可以使用多线程。
举一个业务场景:
在用户注册的时候,在用户填完基本信息后,点击注册按钮。
程序需要
1、在用户表新增一条记录
2、初始化用户角色权限
3、发送注册认证邮件
4、初始化默认数据
意思就是,用户注册设计到很多业务逻辑,出现的问题就是:注册很慢,点击注册需要反应很长时间
在这业务里面,其中的第3步和第4步我们就可以放到 子线程 去做,因为子线程不会阻塞主线程,所以
反应速度就会提上去了。
线程的创建
先了解下线程的创建方法
创建方法一
声明实现 Runnable 接口的类。即 java.lang.Runnable 接口
例子
public class MyWorkThread implements Runnable {
private String name;
public MyWorkThread(String name){
this.name = name;
}
@Override
public void run() {
System.out.println(this.name+"开始干活了...");
try {
//模拟业务耗时
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println(this.name+"干完活了...");
}
}
声明一个线程后,然后再调用
Thread thread2 = new Thread(new MyWorkThread("name2"));
thread2.start();
System.out.println("主线程接着走...");
创建方法二:
使用匿名类
Thread oneThread = new Thread(new Runnable() {
@Override
public void run() {
System.out.println("开始干活了...");
try {
//模拟业务耗时
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("干完活了...");
}
});
oneThread.start();
使用匿名类的好处就是可以不声明一个线程类,而是直接使用。
扫码分享
版权说明
作者:SQBER
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
{0}
{5}
{1}
{2}回复
{4}
*昵称:
*邮箱:
个人站点:
*想说的话: