多线程与并发
「已注销」
业精于勤荒于嬉,行成于思毁于随
展开
-
Java多线程与并发 --- 进程与线程的区别
进程与线程的区别进程和线程的由来1、串行 --- 初期的计算机智能串行执行任务,并且需要长时间等待用户输入2、批处理 --- 预先将用户的指令写成清单,批量串出来用户的指令,仍然无法并发执行3、进程 --- 进程独占内存空间,保存各自运行状态,相互间不干扰且可以相互切换,为并发处理任务提供了可能。4、线程 --- 共享内存的进程资源,相互间切换更快速,支持更细粒度的任务控...原创 2019-05-07 12:17:29 · 202 阅读 · 0 评论 -
Java多线程与并发 --- start 与 run 方法的区别
原创 2019-05-07 12:28:28 · 190 阅读 · 0 评论 -
Java多线程与并发 --- Thread 与 Runnable 的关系
Thread 是一个类,源码中这个类实现了ThreadRunnable 是一个接口Thread : 例子Runnable : 例子原创 2019-05-07 12:46:38 · 173 阅读 · 0 评论 -
Java多线程与并发 --- 如何实现处理线程的返回值
如何实现处理线程的返回值?一、主线程等待法。缺点,需要自己实现等待的逻辑,等待的变量如果过多,逻辑就会多,代码就是非臃肿,循环多久是不确定的。没法精准的控制。二、使用Thread 类的join() 阻塞当前线程以等待子线程处理完毕。缺点粒度不够细三、通过Callable 接口实现。1、通过Futrue Task 2、 线程池主线程等待法:json() 阻塞:...原创 2019-05-07 13:34:56 · 994 阅读 · 0 评论 -
Java多线程与并发 --- 线程的状态
在一个已经结束的线程上再次启动线程会报异常原创 2019-05-07 20:40:23 · 424 阅读 · 0 评论 -
Java多线程与并发 --- sleep 和 wait 的区别
sleep 和 wait 的区别?基本差别:sleep 是 Thread 类的方法wait 是 Object 类的方法sleep 可以在任何地方使用wait 只能在 synchronized 方法 或者 synchronized 块中使用最主要的本质区别:Thread.sleep 只会让出CPU ,不会导致锁行为的改变Object.wait 不仅让出CPU ,还会释...原创 2019-05-07 20:57:31 · 162 阅读 · 0 评论 -
Java多线程与并发 --- notify 和 notifyall 的区别
notify 和 notifyall 唤醒锁notify 和 notifyall 的区别先明白两个概念:锁池:EntryList等待池:WaitSet这个时候 再来看 notify 和 notifyall 的区别:notifyall : 会让所有处于等待池的线程全部进入锁池去竞争获取锁的机会notify : 只会随机选取一个处于等待池中的线程进入锁池中...原创 2019-05-07 21:16:19 · 196 阅读 · 0 评论 -
Java多线程与并发 --- yield 函数
yield 函数yield 对锁行为不会有影响,yield 不会让出当前线程占用的锁原创 2019-05-07 21:23:07 · 218 阅读 · 0 评论 -
Java多线程与并发 --- interrupt 函数
interrupt 函数如何中断线程?已经被抛弃的方法:一、通过调用 stop()方法停止线程stop 太过于暴力且不安全的,使得被停止的线程来不及清理,会马上释放锁,引发数据不同步的问题二、suspend() 方法 resume ()方法目前使用的方法:一、interrupt (),通知线程应该中断了public class InterruptDemo {...原创 2019-05-07 21:35:15 · 195 阅读 · 0 评论