![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
迷途未远
这个作者很懒,什么都没留下…
展开
-
Collections工具类中sort排序的两种方式
package com.my.action;import java.io.Serializable;import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.List;public class Student implements Comparabl原创 2017-03-17 22:48:26 · 559 阅读 · 0 评论 -
高并发编程之synchronized
synchronized对某个对象加锁public class Demo01 { private int count = 10; private Object object = new Object(); public void test(){ //任何线程要执行下面的代码,必须先拿到object对象的锁 synchronized...原创 2018-05-09 11:00:21 · 182 阅读 · 0 评论 -
高并发编程之volatile
1.volatile 关键字,使一个变量在多个线程间可见public class Demo12 { volatile boolean running = true; public void test() { System.out.println("test start......."); while (running) { ...原创 2018-05-09 13:47:48 · 206 阅读 · 0 评论 -
高并发编程之面试题一
题目:实现一个容器,提供两个方法,add,size。写两个线程,线程1添加10个元素到容器中,线程2实现监控元素的个数,当个数到5个时,线程2给出提示并结束。程序一,分析下面程序能否实现List lists = new ArrayList(); public void add(Object o) { lists.add(o); } publi...原创 2018-05-12 21:38:20 · 2994 阅读 · 1 评论 -
高并发编程之ReentrantLock
回顾synchronizedpublic class ReentrantLock1 { public synchronized void test1() { for (int i = 0; i < 10; i++) { System.out.println(i); try { T...原创 2018-05-13 10:29:59 · 242 阅读 · 0 评论 -
高并发编程之面试题二
题目:写一个固定容量同步容器,拥有put和get方法,以及getCount方法,能够支持2个生产者线程以及10个消费者线程的阻塞调用。使用wait和notify/notifyAll来实现public class MyContainer1<T> { private final LinkedList<T> lists = new LinkedList<...原创 2018-05-13 10:36:50 · 628 阅读 · 0 评论 -
高并发编程之ThreadLocal
ThreadLocal为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独立地改变自己的副本,而不会影响其它线程所对应的副本。public class ThreadLocal2 { /*volatile static Person p = new Person();*/ private static ThreadLocal<Person1> tl ...原创 2018-05-13 11:47:53 · 202 阅读 · 0 评论