
线程实现方式
线程相关的知识点
李智文
如鹿渴望着水
展开
-
并发与并行的区别
并发:指两个或多个事件在同一个时间段内发生.并行:指两个或多个事件同时发生.原创 2019-09-18 01:40:42 · 138 阅读 · 0 评论 -
Thread与Runnable的区别
创建多线程有两种方式,一种是继承Thread类,一种是实现Runnable接口.两者的区别其实就是接口与类的区别,相比而言,接口比类更有优势.实现Runnable接口创建多线程程序的好处:1.避免了单继承的局限性一个类只能继承一个类,类继承了Thread就不能继承其他的类了,而实现了Runnable接口,还可以继承其他的类,实现其他的接口.2.增强了程序的扩展性,降低了程序耦合性...原创 2019-09-21 01:15:34 · 313 阅读 · 0 评论 -
线程睡眠
Thread类中有一个静态方法:public static void sleep(long millis)此方法的作用是:使当前的线程以指定的毫秒数暂时停止执行,毫秒数结束后,线程继续执行.我把睡眠套在循环内,设置成1000毫秒(就是1秒),也就是1秒循环一次.运行之后我第一张截图运行到5时,右边时间显示为27秒.第二张截图运行到36,右边时间运行到58秒.证实为一秒循环一次,sleep...原创 2019-09-20 10:48:51 · 250 阅读 · 0 评论 -
设置线程名称
设置线程名称有两种方法:1.使用Thread类中的setName方法改变线程名称:在main中设置线程名字:2.使用带参构造方法设置线程名称创建一个带参数的构造方法,参数传递线程的名字;调用父类带参构造,并把线程名称传递给父类,让父类给子类起一个名字,分配新的Thread对象....原创 2019-09-20 09:19:48 · 2228 阅读 · 0 评论 -
获取线程名称
有两种方式,第一种方式:使用Thread类中的getName方法直接可以获取本线程的名字,在main中每创建一个新的线程并调用新线程的start方法,就会执行新线程的run方法,而run方法中有我们打印的getName方法所得出来的当前线程名.当然,也可以在main中获取并打印当前线程名称第二种方式:先使用Thread类中currentThread静态方法获取当前正在执行对象的引用,再用...原创 2019-09-20 08:14:28 · 9838 阅读 · 2 评论 -
多线程运行原理
Java的线程调度为抢占式调度,打印出来的多线程为随机性打印结果.下面我们解释一下多线程情况下的随机性打印结果:当我们运行程序时,JVM找OS开辟一条main方法通向cpu的路径,这条路径叫主线程,cpu通过主线程执行main方法.而main方法中我们创建了新的线程,新线程开辟了一条通向cpu的新路径,用来执行run方法.(不知道run方法的请看如何创建多线程)此时对于cpu而言就有了两条...原创 2019-09-19 23:25:04 · 415 阅读 · 0 评论 -
创建多线程
创建多线程有两种方式:第一种创建方式:1.创建Thread的子类2.重写run方法并设置线程任务3.创建我们自定义的新线程对象4.调用start方法运行该对象的线程下图是4个线程得出来的部分结果:由此可以看出线程之间互不影响.下图是把一个线程启动了两次我们看一下结果:结果报错了,说明同一个线程并不能启动两次.第二种创建方式:...原创 2019-09-19 04:39:06 · 355 阅读 · 0 评论 -
什么是主线程?
主线程:是执行主(main)方法的线程.单线程程序:java程序中只有一个线程,执行从main方法开始,从上到下依次执行.主线程的概念:JVM执行main方法,main方法会进入到栈内存,JVM会找操作系统开辟一条main方法通向cpu的执行路径,cpu就可以通过这个路径来执行main方法,而这个路径有一个名字,叫main(主)线程....原创 2019-09-18 22:59:41 · 5781 阅读 · 0 评论 -
什么是线程调度?
线程调度有两种:1.分时调度分时调度就是所有线程轮流拥有(使用)cpu的使用权,平均分配每个线程占用cpu的时间2.抢占式调度抢占式调度就是优先让优先级高的线程使用cpu,如果线程的优先级相同,则会随机选择一个,所以谁的优先级高,谁抢夺cpu的几率就越大,从而优先级高的占用cpu的时间会更长,Java为抢占式调度.抢占式调度使cpu会在多个进程中、多个线程中来回跳转,其速度非常快:1/n...原创 2019-09-18 03:05:57 · 5054 阅读 · 0 评论 -
什么叫线程?
首先,从电脑的硬件CPU说起,cpu是中央处理器,是计算数据用的,相当于人类的大脑,指挥着电脑软件和硬件干活.什么叫线程?举个例子:腾讯电脑管家中有病毒查杀,清理垃圾,电脑加速等功能,腾讯电脑管家是一个被加载进内存的程序,所以它是进程,而这个进程中每一个功能启动所产成的任务都可以开启通往cpu的执行路径,而这些执行路径则是线程.换句话说就是:线程属于进程,进程中至少有一个线程负责程序的执行....原创 2019-09-18 02:29:27 · 1625 阅读 · 0 评论 -
什么是进程?
电脑中有硬盘(ROM)和内存(RAM),程序没有运行时储存在硬盘中,等到程序运行时,为了使程序可以快速运行,则程序被加载到内存中,那么被加载到内存中的程序我们叫它为进程....原创 2019-09-18 01:52:43 · 265 阅读 · 0 评论 -
匿名内部类形式创建多线程
创建多线程的方式有两种,而创建多线程的形式还有一种就是匿名内部类,下面分别用两种创建方式的匿名内部类形式给大家演示一下:1.继承Thread的匿名内部类形式创建线程2.实现Runnable的匿名内部类形式创建线程...原创 2019-09-21 04:55:55 · 270 阅读 · 0 评论