线程
线程的概念
可以让我们的程序同时做多件事
进程:进程是操作系统中的概念,只每个独立运行的程序就是一个进程
线程:线程是由进程创建的,是操作系统能够进行运算调度的最小单位,它被包含在进程之内,是进程中的实际运作单位,可以将一段代码分离出来,以独立的线程的方式运行,这段代码会与主进程,同时进行,而已使我们的程序同时做多件事,提高程序的运行效率
并发:一个cup,两个线程
并行:两个cpu,两个线程,每个线程占用1个cpu
程序继承Thread,重写run方法,new对象的时候使用start()启动线程
线程对象的start只能使用一次,运行完之后,JVM自动回收,自动成为垃圾
一个线程类,可以创建多个线程对象,每个线程对象都会以一个独立的方式来运行
程序实现Runable接口,重写run方法,创建自定义类对象,使用thread的有参构造方法,将自定义类对象传入,在使用start()方法.
第一种:需要子类继承Thread类,第二种需要子类实现runable接口,
区别是,继承是单继承,接口可以多实现,常用runable接口(建议使用)
匿名内部类的线程实现方式
new thread主播弄好了吗(){重写run方法,内写方法体}.start();
newThread(new Runable){重写run方法,内写方法体}.start();
fori{方法体}//主线程
单数不定向到我风湿的哪位达人说明她的中医
thread的常用静态方法:
成员方法getName(),获取线程名称,默认名称Thread--索引
成员方法setName(),设这线程名称
静态方法:Thread.currentThread(),获取当前的线程对象
和this的区别https://blog.csdn.net/nba_0916/article/details/81902277
静态方法:Thread.sleep(毫秒),做一些动画,钟表,每秒钟走一次