多线程

java中的多线程

一、线程

1.要讨论多线程,那么首先要先了解线程,什么是线程?

一个线程就是一个程序内部的一条执行线索,一个或多个线程组成了一个进程。

2.那什么是进程呢?

在多任务系统中,每个独立执行的程序称为进程。也就是“正在进行的程序”。

3.进程和线程的联系与区别?

线程是包括在进程中的,每个进程至少有一个主线程,也可以只有一个主线程(程序的main方法就是主线程)。

4.什么是多线程?

如果要一程序中实现多段代码同时交替运行,就需要产生多个线程,并指定每个线程上所要运行的程序代码段,这就是多线程。

5.线程的生命周期?

①新建状态
②就绪状态
③运行状态
④阻塞状态
⑤终止状态
①→②→③→
        ↑↓
        ④
注意:当一个线程被创建后,它不会马上执行,而是会进入就绪状态,等待资源分配!

6.线程的创建

在java中有两种方法创建一个线程:

6.1继承Thread类,并重写run()方法

例子:
public class MyThread extends Thread{
public MyThread(){}
//在这里我写了一个线程的构造方法,来给线程定义一个名字
public MyThread(String name){
super(name);
}
@Override
public void run() {
for(int i=1;i<10;i++){
System.out.println("子线程"+i);
}
}
}

6.2实现Runnable接口,并重写run()方法

例子:
public class MulThread implements Runnable {
public MulThread(){}
public MulThread(String name){
Thread.currentThread().setName(name);
}
@Override
public void run() {
for(int i=0;i<5;i++){
System.out.println("这是"+Thread.currentThread().getName()+"的第"+(i+1)+"次循环");
}
try {
Thread.sleep((long)(Math.random()*1000));
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println(Thread.currentThread().getName()+"  FINISHED!");
}
}

二、线程池

1.什么是线程池

线程池是一种多线程处理形式,处理过程中将任务添加到队列,然后在创建线程后自动启动这些任务。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值