随笔 - 478
文章 - 0
评论 - 31
阅读 -
57万
随笔分类 - 并发
多线程-控制两个线程交替打印
摘要:package datatype; public class demo { static final Object object = new Object(); public static void main(String[] args) { Thread t1 = new Thread(new Runnable() { @Override public void run() { for (int
阅读全文
happens-before
摘要:1-什么是happens-before? (1)happens-before是定义了 Java 多线程操作的有序性和可见性,防止了编译器重排序对程序结果的影响的一种规则。 (2)happens-before原则: 1)as-if-serial原则。(线程中的每个操作都在该线程后的操作之前执行) 2)
阅读全文
如何终止一个线程
摘要:(1)使用Thread.stop()或者Thread.interrupt()方法。(不建议使用,不可控) (2)设置共享变量,自定义终止方法,通过修改共享变量的值是run()或cal()执行完毕。 (3)等待run()或者是call()方法执行完毕。
阅读全文
线程生命周期的几种状态
摘要:(1)线程的生命周期共有六种状态 1)NEW:new一个线程。 2)RUNNABLE:执行start方法进入可运行状态,等待分配时间片。 3)BLOCKED:阻塞状态(例如:同步锁被其他线程持有) 4)WAITING:等待状态(例如:执行wait/slee/join/...之后) 5)TIMED_W
阅读全文