摘要: 1.请简述一下线程的sleep()方法和yield()方法有什么区别? 回答: ①sleep()方法给其他线程运行机会时不考虑线程的优先级,因此会给低优先级的线程以运行的机会;yield()方法只会给相同优先级或更高优先级的线程以运行的机会; ①sleep()方法给其他线程运行机会时不考虑线程的优先 阅读全文
posted @ 2019-09-29 22:02 WhyNott 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 1.volatile保证有序性和可见性。这跟java内存模型有关, volatile保证了不同线程对共享变量操作时的可见性,也就是说当一个线程修改了volatile修饰的变量,另外一个线程会立即看到最新的值 volatile禁止JVM和处理器对使用volatile修饰的关键字进行指令进行重排序(比如 阅读全文
posted @ 2019-09-29 17:04 WhyNott 阅读(121) 评论(0) 推荐(0) 编辑