Wesley13 Wesley13
4年前
java executor
在java.util.concurrent包中的ExecutorService的实现就是壹個线程池的实现任务的委托(TaskDelegation)壹旦线程把任务委托给ExecutorService,该线程就会继续执行与运行任务无关的其它任务。Executor框架的两级调度模型在HotSpotVM的线程模型中,Java线程
Wesley13 Wesley13
4年前
Java NIO —— Buffer(缓冲区)
Buffer是一个抽象类,位于java.nio包中,主要用作缓冲区。注意:Buffer是非线程安全类。缓冲区本质上是一块可以写入数据,然后可以从中读取数据的内存。这块内存被包装成NIOBuffer对象,并提供了一组方法,用来方便的访问该块内存。NIO有以下几种Buffer类型:ByteBufferMappedByteBuff
Stella981 Stella981
4年前
Executor线程池
线程池为线程生命周期的开销和资源不足问题提供了解决方案。通过对多个任务重用线程,线程创建的开销被分摊到了多个任务上。_0_|_1_线程实现方式Thread、Runnable、Callable//实现Runnable接口的类将被Thread执行,表示一个基本任务p
Stella981 Stella981
4年前
CountDownLatch、CyclicBarrier 的对比
CountDownLatch、CyclicBarrier都可以用于:在多线程异步执行过程中,执行预定的流程后唤醒指定的线程进行相应的操作.区别:1,CountDownLatch唤醒过一次,就废弃了;CyclicBarrier可以重复之前的预定流程,反复唤醒。2,CountDownLatch可用于唤醒主线程,异步线程\任意线程,
Wesley13 Wesley13
4年前
Java Unsafe 类
Unsafe类是啥?Java最初被设计为一种安全的受控环境。尽管如此,JavaHotSpot还是包含了一个“后门”,提供了一些可以直接操控内存和线程的低层次操作。这个后门类——sun.misc.Unsafe——被JDK广泛用于自己的包中,如java.nio和java.util.concurrent。但是丝毫不建议在生产环境中使用这
Stella981 Stella981
4年前
ReentrantReadWriteLock实现原理
  在java并发包java.util.concurrent中,除了重入锁ReentrantLock外,读写锁ReentrantReadWriteLock也很常用。在实际开发场景中,在使用共享资源时,可能读操作远远多于写操作。这种情况下,如果对这部分共享资源能够让多个线程读的时候不受阻塞,仅仅在写的时候保证安全性,这样效率会得到显著提升。读写锁Reentra
Wesley13 Wesley13
4年前
2019秋招复习笔记
第一模块并发与多线程Java多线程方法:实现Runnable接口,继承thread类,使用线程池操作系统层面的进程与线程(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fb
Wesley13 Wesley13
4年前
UI线程和工作者线程
本文转载于:http://blog.csdn.net/libaineu2004/article/details/40398405(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fblog.csdn.net%2Flibaineu2004%2Farticle%2Fdetails%2F40398
Wesley13 Wesley13
4年前
Java多线程(一) 什么是线程
声明:本系列大多是翻译自https://www.javatpoint.com,加上自己的增删改,尽力写的系统而通俗易懂,后文不再重复声明。点我跳过黑哥的卑鄙广告行为,进入正文。Java多线程系列更新中~  正式篇:1.Java多线程(一)什么是线程(https://www.oschina.net/action/GoT
Wesley13 Wesley13
4年前
Mysql 层级、执行顺序、执行计划分析
逻辑分层下面是MySQL的逻辑分层图:!(https://oscimg.oschina.net/oscnet/a78a2f0d900b63a6ded490baec0b80b6c42.png)连接层:连接与线程处理,这一层并不是MySQL独有,一般的基于C/S架构的都有类似组件,比如连接处理、授权认证、安全等。服务层:包括缓存查询、