![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
安歌_claire
致虚极,守静笃
展开
-
解决死锁问题
死锁问题的解决办法避免多次锁定:尽量避免同一个线程对多个同步监视器进行锁定。具有相同的加锁顺序:如果多个线程需要对多个同步监视器进行锁定,则应该保证它们以相同的顺序请求加锁。使用ReentrantLock的tryLock()方法加锁,可以指定time和unit参数,当超过指定时间会自动释放对lock的锁定死锁检测的算法ReentrantLock-tryLock()解死锁问题注意:当调用tryLock()方法加锁时,无需调用unlock()在finally中解锁,否则会报错java.lan原创 2020-05-19 16:51:04 · 554 阅读 · 0 评论 -
FileTime格式化显示
BasicFileAttributeView basicView = Files.getFileAttributeView(path,BasicFileAttributeView.class);BasicFileAttributes basicAttribute = basicView.readAttributes();FileTime time = basicAttribute.creationTime();String rs = "";DateTimeFormatter formatter原创 2020-05-19 09:19:25 · 548 阅读 · 0 评论 -
如何在stream().map()中抛出并且捕获自定义异常
以下是一个xxxServiceImpl类的代码示例public PagedList<DeviceOnlineLog> getAll(int page, int pageSize,String queryStr,LocalDateTime from,LocalDateTime to){ List<DeviceOnlineLogEntity>logEntities=nul...原创 2020-02-14 10:05:10 · 2815 阅读 · 0 评论 -
JVM
java内存区域与内存溢出异常java虚拟机运行时数据区域程序计数器程序计数器是当前线程所执行字节码的行号指示器,通过改变计数器的值来选取下一条要执行的字节码指令。为保障多线程实现,在每个线程切换之后能够恢复到正常的执行位置,各条线程之间的计数器互不影响,独立存储,则这类内存区域为线程私有的内存。如果线程执行java方法,计数器记录的是正在执行的java虚拟机字节码指令的地址;如果线程...原创 2020-02-14 09:45:01 · 79 阅读 · 0 评论 -
java的编码规范
命名规范数组类型与中括号紧挨相连来表示数组正例:定义整形数组 int[] arrayDemo;反例:在 main 参数中,使用 String args[]来定义。POJO 类中布尔类型的变量POJO 类中布尔类型的变量,都不要加 is 前缀,否则部分框架解析会引起序列化错误。反例:定义为基本数据类型 Boolean isDeleted 的属性,它的方法也是 isDeleted(),R...原创 2020-02-14 09:43:08 · 444 阅读 · 0 评论 -
java入门
排序算法Comparator在类里面定义Comparator规则sort,顾名思义,排列的意思List接口中,sort方法时这样定义的:这里的这个 Comparator<? super E> c 是什么呢?这个Comparator<? super E> c 就是排列的规则的意思,并且这个规则需要自己去定义。default void sort(Comparato...原创 2020-02-14 09:34:51 · 530 阅读 · 0 评论