java线程简单介绍

1.线程?

操作系统有两个容易混淆的概念,进程和线程。

        进程:一个计算机程序的运行实例,包含了需要执行的指令;有自己的独立地址空间,包含程序内容和数据;不同进程的地址空间是互相隔离的;进程拥有各种资源和状态信息,包括打开的文件、子进程和信号处理。

        线程:表示程序的执行流程,是CPU调度执行的基本单位;线程有自己的程序计数器、寄存器、堆栈和帧。同一进程中的线程共用相同的地址空间,同时共享进进程锁拥有的内存和其他资源。

2.线程生命周期

        线程分为五个阶段:创建、就绪、运行、阻塞、终止。如下图:


3.如何实现多线程?

        java提供了2种方法,1)通过继承java.lang.Thread类;2)通过实现java.lang.Runnable接口。代码如下:

继承Thread类:

class 类名 extends Thread{
方法1;
方法2;
…
public void run(){
// other code…
}
属性1;
属性2;
…
 
}
通过重写run()方法,来实现java的多线程!

class 类名 implements Runnable{
方法1;
方法2;
…
public void run(){
// other code…
}
属性1;
属性2;
…
 
}
同样重写run()方法!

4.两种方法的区别

实现Runnable接口比继承Thread类所具有的优势:

        1)适合多个相同的程序代码的线程去处理同一个资源
        2)可以避免java中的单继承的限制
        3)增加程序的健壮性,代码可以被多个线程共享,代码和数据独立

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值