自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (1)
  • 收藏
  • 关注

原创 Spring框架中bean的生命周期

Spring框架中bean的生命周期BeanNameAware、ApplicationContextAware、BeanFactoryAwareBeanPostProcessor、InitializingBean、DisposableBeanbean的生命周期BeanNameAware、ApplicationContextAware、BeanFactoryAwareBeanNameAware 接口只有一个方法 setBeanName()。实现BeanNameAware 接口的 bean,在 bean加

2021-12-14 14:32:45 353

原创 java面试

java面试知识点:Mybatis:https://www.cnblogs.com/lanqi/p/7851552.html

2021-11-16 18:05:05 105

原创 线程池(三)--ScheduledThreadPoolExecutor

线程池(三)--ScheduledThreadPoolExecutor什么是ScheduledThreadPoolExecutor构造方法提交任务APIScheduledThreadPoolExecutor使用什么是ScheduledThreadPoolExecutorScheduledThreadPoolExecutor是一个定时线程池,他是继承ThreadPoolExecutor类,所不同的是它具有定时执行,以周期或间隔循环执行任务等功能。构造方法 public ScheduledThr

2021-11-16 15:22:29 330

原创 线程池(二)--ThreadPoolExecutor

线程池(二)--ThreadPoolExecutor构造方法参数解释API线程池原理图ThreadPoolExecutor提交线程例子构造方法public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit

2021-11-16 10:51:44 289

原创 线程池(一)--ExecutorService

线程池(一)--线程池基本方法和属性线程池什么时候使用线程池线程池的优势线程的实现方法Executor框架线程池重点属性ctl相关方法线程池5种状态线程池的具体实现线程池线程池是一个线程缓存,线程是稀缺资源,如果被无限制的创建,不仅仅会消耗系统资源,还会降低系统的稳定性。什么时候使用线程池单个任务处理时间比较短需要处理的任务数量很大线程池的优势重用存在的线程,减少线程创建、消亡的开销,提高性能提高响应速度。当任务到达时,任务可以不需要的等到线程创建就能立即执行。提高线程的可管理性。线

2021-11-15 14:54:01 813

原创 并发编程(八)--CyclicBarrier

并发编程(八)--CyclicBarrierCyclicBarrier是什么CyclicBarrier构造器CyclicBarrier的API应用场景示例代码CyclicBarrier是什么栅栏屏障,让一组线程到达一个屏障(也可以叫同步点)时被阻塞,知道最后一个线程到达屏障时,屏障才会开门,所有被屏障拦截的线程才会继续执行。CyclicBarrier构造器 CyclicBarrier(int parties, Runnable barrierAction) CyclicBarrier(int pa

2021-11-12 18:01:43 70

原创 并发编程(七)--CountDownLatch

并发编程(七)--CountDownLatchCountDownLatch是什么CountDownLatch如何工作APICountDownLatch是什么CounDownLatch这个类能够使一个线程等待其它线程完成各自的工作后再执行,例如,应用程序的主线程希望在负责启动框架服务的线程已经启动所有的框架服务之后再执行。使用场景:Zookeeper分布式锁,jmeter模拟高并发等。CountDownLatch如何工作CountDownLatch是通过一个计数器来实现的,计数器初始值为线程的数量。

2021-11-12 16:05:35 1059

原创 并发编程(六)---Semaphore

并发编程(六)--SemaphoreSemaphore是什么怎么使用Semaphore构造方法重要方法基本使用Semaphore是什么Semaphore字面意思就是信号量的意思,他的作用就是控制访问特定资源的线程数目,底层依赖AQS的状态State,是生产当中比较常用的一个工具类。怎么使用Semaphore构造方法public Semaphore(int permits) public Semaphore(int permits, boolean fair) permits表示许可线程的数量

2021-11-10 18:46:42 395

原创 并发编程(五)--AQS原理浅析

并发编程(五)--AQS原理AQS三大核心原理AQS具备特性AQS中的StateAQS中的两种资源共享方式AQS定义两种队列同步等待队列条件等待队列AQS三大核心原理自旋:当多个线程同时竞争锁时会先进行自旋操作,未抢到锁的线程进入CLH同步队列时也会先进行自旋。CAS:抢锁原理是用CAS算法,主要核心思想是比较与交换。队列:用来承载未竞争到锁的线程的容器,是一个FIFQ的同步队列ReentrantLock lock = new ReentrantLock(false);//false为非公平锁

2021-11-10 15:12:24 391

原创 并发编程(四)--ReentrantLock

并发编程(四)--ReentrantLockReetrantLockReetrantLock工作原理ReetrantLock实现重进入ReetrantLockReentrantLock是一种基于AQS框架的应用实现,是JDK中的一种线程并发访问的同步手段,他的功能类似与synchronizd是一种互斥锁,可以保证线程安全,而且他具有比synchronized更多的特性,比如他支持手动加锁与解锁,支持加锁的公平性。public class Testcase { ReentrantLock lock

2021-11-09 11:23:56 324

原创 并发编程(三)--synchronized

并发编程(三)--synchronizedsynchronized原理详解synchronized底层原理锁的膨胀升级过程synchronized原理详解synchronized 内置锁是对象锁(锁的是对象而非引用),作用粒度是对象,可以用来实现对临界的同步互斥访问,是可重入的。加锁方式:1.同步实例方法,锁是当前实例对象public class Testcase { public synchronized void test(){};}2.同步类方法,锁是当前类对象public

2021-11-08 14:18:03 76

原创 并发编程(二)---关键字volatile

volatile内存语义volatile的可见性volatile无法保证其原子性volatile禁止重排优化

2021-11-05 16:29:05 137 1

原创 并发编程(一)---JMM模型

什么是jvm模型数据同步八大原子操作并发编程三大特性JMM解决并发编程三大特性问题

2021-11-05 10:42:24 81

ADS射频A2I22D050n放大器

用于ADS仿真的元件库用于ADS仿真的元件库

2018-11-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除