- 博客(5)
- 收藏
- 关注
原创 线程池ThreadPool
线程池的优势:线程池做的工作只要是控制运行的线程数量,处理过程中将任务放入队列,然后在线程创建后启动这些任务,如果线程数量超过了最大数量,超出数量的线程排队等候,等其他线程执行完毕,再从队列中取出任务来执行。它的主要特点为:线程复用;控制最大并发数;管理线程。第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的销耗。第二:提高响应速度。当任务到达时,任务可以不需要等待线程创建就能立即执行。第三:提高线程的可管理性。线程是稀缺资源,如果无限制的创建,不仅会销耗系统资源,还会降低系统的
2020-09-16 09:03:59
157
原创 实现Callable接口的类创建线程以及CountDownLatch,CyclicBarrier,Semaphore以及ReadWriteLock
获得线程的方法有哪几种?(1)继承thread类(2)runnable接口如果只回答这两个你连被问到juc的机会都没有,一般new Thread()中可以传入一个实现了Runnable的类创建新类MyThread实现runnable接口class MyThread implements Runnable{ @Override public void run() { }}新类MyThread2实现callable接口class MyThread2 implements
2020-09-14 16:06:34
192
原创 说明ArrayList,HashSet,HashMap是线程不安全的以及解决方法
同时有30个线程去同时读写list集合public static void listNotSafe(){ //采用Collections工具类将ArrayList变为线程安全的 List<String> list =new ArrayList<>();// Collections.synchronizedList(new ArrayList<>());//new Vector<>();//new ArrayList<>();
2020-09-14 12:40:15
273
原创 Lock以及synchronized锁
class Phone{ public static synchronized void sendEmail() throws Exception{ Thread.sleep(4000); System.out.println("-------------sendEmail"); } public synchronized void sendSMS() throws Exception{ System.out.println("-
2020-09-13 21:32:44
169
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人