多线程及并发
天高地阔
这个作者很懒,什么都没留下…
展开
-
Java多线程实现-Runnable和Thread
Runnable简介Runnable是一个接口,该接口中只包含一个run()方法。他的定义如下:public interface Runnable { public abstract void run();}Runnable的作用:实现多线程。我们可以定义一个类A实现Runnable接口;然后通过new Thread(new A())方式新建线程。Thread简介Thread是一个...原创 2018-06-30 18:27:40 · 174 阅读 · 0 评论 -
并发和并行
并行与并发:并行:多个cpu实例或者多台机器同时执行一段处理逻辑,是真正的同时。并发:通过cpu调度算法,让用户看上去同时执行,实际上从cpu操作层面不是真正的同时。并发往往在场景中有公用的资源,那么针对这个公用的资源往往产生瓶颈,我们会用TPS或者QPS来反应这个系统的处理能力。线程安全:经常用来描绘一段代码。指在并发的情况之下,该代码经过多线程使用,线程的调度顺序不影响任何结果。这个时候使用多...原创 2018-05-24 20:39:44 · 256 阅读 · 0 评论 -
Java多线程状态变换
Java Thread 类中定义了6中状态,分别是NEW、RUNNABLE、BLOCKED、WAITING、TIMED_WAITING、TERMINATED。平时人们为了便于理解,常常分为5中状态,分别是新建,就绪,运行阻塞和死亡状态。新建状态:新建了一个线程对象。就绪状态:也叫可运行状态。线程对象创建后,其他线程(如main线程)调用了该对象的start()方法,该对象的线程状态处于可运行线程池...转载 2018-07-01 21:16:57 · 139 阅读 · 0 评论 -
Java多线程start()函数和run()函数
线程的状态在Java中,线程通常有五种状态:创建,就绪,运行,阻塞和死亡.其中:创建状态:在生成线程对象,并没有调用该对象的star方法,这时线程处于创建状态。就绪状态:当调用了线程对象的start方法之后,该线程就进入就绪状态。但是此时线程调度程序还没有把 该线程设置为当前线程,此时处于就绪状态。在线程运行之后,从等待或者睡眠中回来之后,也会处 于就绪状态。运行状态:线程调度程序将处...原创 2018-05-30 23:42:09 · 13337 阅读 · 1 评论 -
用户线程和守护线程
在Java中线程分为两类:用户线程(User thread)和守护线程(Daemon thread)。守护进程(Daemon)是运行在后台的一种特殊进程。它的作用是为其他线程的运行提供便利服务,它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。也就是说守护线程不依赖于终端,但是依赖于系统,与系统“同生共死”。因此,当所有的非守护线程结束时,程序也就终止了,同时会杀死进程中的所有守护...原创 2018-07-01 21:19:48 · 956 阅读 · 0 评论