- 博客(5)
- 资源 (2)
- 问答 (1)
- 收藏
- 关注
原创 Day4
线程池降低资源消耗提高响应速度提高线程的可管理性线程池中的线程执行任务分两种情况在execute()方法中创建一个线程时,会让这个线程执行当前任务。这个线程执行完上图中1的任务后,会反复从BlockingQueue获取任务来执行。线程池时需要参數corePoolSize(线程池的基本大小)runnableTaskQueue(任务队列) ArrayBlockingQueue:是一个
2017-05-29 10:29:50 211
原创 Day3
队列同步器(AQS)AbstractQueuedSynchronizer锁是面向使用者的,它定义了使用者与锁交互的接口(比如可以允许两个线程并行访问),隐藏了实现细节;同步器面向的是锁的实现者,它简化了锁的实现方式,屏蔽了同步状态管理、线程的排队、等待与唤醒等底层操作。锁和同步器很好地隔离了使用者和实现者所需关注的领域。模板方法独占式获取与释放同步状态共享式获取与释放同步状态查询同步队列中的等
2017-05-28 15:31:48 193
原创 Day2并发
记录基于保守策略的JMM内存屏障插入策略在每个volatile写操作的前面插入一个StoreStore屏障。 保障所有的普通写在volatile写之前刷新到主内存。在每个volatile写操作的后面插入一个StoreLoad屏障。 避免volatile写与后面可能有的volatile读/写操作重排序在每个volatile读操作的后面插入一个LoadLoad屏障。 LoadLoad屏障用来
2017-05-26 11:38:06 230
原创 Day1并发
笔记减少上下文切换无锁的并发编程CAS算法减少线程使用协程序。死锁==进程拿到了锁但是,因为异常情况造成锁没有释放==避免一个线程同时获得多个锁 避免一个线程在锁内占用多个资源,保证每个锁只占用一个资源。使用定时锁来代替内部锁的机制。对于数据库锁,加锁和解锁都必须在一个数据库里面,否则会出现解锁失败。资源限制==硬件上或者软件上的资源限制==++使用线程不一定快,要考虑上下文切换
2017-05-25 11:03:26 338
使用geoserver发布地图, openlayer3显示有问题
2016-11-28
TA创建的收藏夹 TA关注的收藏夹
TA关注的人