- 博客(5)
- 收藏
- 关注
原创 多线程学习笔记
进程进程是程序的一次执行过程,是系统运行程序和资源分配的基本单位,所以进程是动态的。系统对一个应用程序的运行和关闭即为进程的创建、运行到消亡的过程。在java中,main函数就是jvm的一个进程的主线程。线程线程是系统进行资源调度的基本单位,一个进程可以产生多个线程,这些线程共享同一个进程的堆和方法区资源,但线程也有私有的虚拟机栈、程序计数器和本地方法栈。所以系统创建一个线程或进行线程之间的通信,花销要比进程小得多,因此,线程可以理解为轻量级的进程。程序程序是含有代码和指令的文件,存储在磁盘或其他
2020-12-08 22:49:09
174
原创 ThreadLocal、线程池学习笔记
ThreadLocal简介ThreadLocal类可以让每个线程绑定自己的值(专属变量),即一个本地线程副本变量的工具类。工作原理通过以下Thread的源码中可知,在Thread类中就有一个threadLocals和一个inheritableThreadLcals变量,它们都是ThreadLocalMap类型的变量(可以理解为由ThreadLocal定义的一个HashMap类型的变量)。默认情况下,这两个变量都为null,只有当调用ThreadLocal类的set方法时才会创建它们。
2020-12-07 23:31:03
184
转载 深入理解JAVA BIO、NIO、AIO
导读:本文你将获取到:同/异步 + 阻/非阻塞的性能区别;BIO、NIO、AIO 的区别;理解和实现 NIO 操作 Socket 时的多路复用;同时掌握 IO 最底层最核心的操作技巧。BIO、NIO、AIO 的区别是什么?同/异步、阻/非阻塞的区别是什么?文件读写最优雅的实现方式是什么?NIO 如何实现多路复用功能?带着以上这几个问题,让我们一起进入IO的世界吧。在开始之前,我们先来思考一个问题:我们经常所说的“IO”的全称到底是什么?可能很多人看到这个问题和我一样一脸懵逼,IO的全称其实是:
2020-12-01 14:52:37
250
原创 SFTP报错:com.jcraft.jsch.JSchException: session is down
SFTP报错:com.jcraft.jsch.JSchException: session is down最近写了一个类用jsch在sftp上下载文件的时候遇到了以下错误com.jcraft.jsch.JSchException: session is downat com.jcraft.jsch.Session.openChannel(Session.java:861)at com.ul...
2019-12-25 15:41:37
7663
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人