04 2021 档案

摘要:win10 当前用户没有C盘权限,很多软件无法写入C盘数据,并且C盘也无法创建除了文件夹之外的任何文件 点击运行 ,输入regedit,依次找到 HKEY_LOCAL_MACHINE,SOFTWARE,Microsoft,Windows,CurrentVersion,Policies,System, 阅读全文
posted @ 2021-04-30 15:23 蒙恬括 阅读(1666) 评论(0) 推荐(0) 编辑
摘要:install -Dmaven.test.skip=true 阅读全文
posted @ 2021-04-27 12:09 蒙恬括 阅读(91) 评论(0) 推荐(0) 编辑
摘要:AQS Java并发编程的核心在于java.util.concurrent包。而juc当中大多数同步器实现都是围绕着共同的基础行为,比如等待队列、条件队列、独占获取、共享获取等,而这个行为的抽象就是基于AbstractQueuedSynchronizer,简称AQS。AQS定义了一套多线程访问共享资 阅读全文
posted @ 2021-04-26 23:32 蒙恬括 阅读(183) 评论(0) 推荐(0) 编辑
摘要:等待唤醒机制: 1:我们知道Object中有wait/notify机制,但是这种机制是基于Monitor机制实现,使用Monitor Object操作的,所以wait/notify方法是在sychronized作用域范围内才能使用的,不然会报错。 而且notify要在wait方法调用之后进行调用才有 阅读全文
posted @ 2021-04-21 08:59 蒙恬括 阅读(117) 评论(0) 推荐(0) 编辑
摘要:管程/监视器 上一篇文章提到了Sychronized重量级锁的时候是基于操作系统metux,其实Java中sychronized是一种monitor机制来保证并发的。可以称为管程或监视器。 同步方法和同步代码块底层都是通过monitor来实现同步的。每个对象都与一个monitor相关联。 上篇也提到 阅读全文
posted @ 2021-04-17 14:02 蒙恬括 阅读(933) 评论(1) 推荐(2) 编辑
摘要:Thread类是怎么创建线程的 java中运行一个线程有好多方式,比如实现一个Runnable接口然后传递给Thread构造函数,还是交给线程池来创建线程执行等等。但是最后都是创建new Thread对象,最后通过thread.start方法来启动一个线程。 但是Java中Thread类只是一个普通 阅读全文
posted @ 2021-04-15 00:13 蒙恬括 阅读(158) 评论(0) 推荐(0) 编辑
摘要:记录下基础知识,啊哈。 Map<String, Object> retMap = new HashMap<String, Object>(); // put进去的200 是个整形数据类型的 retMap.put("code",200); //强转也会出错的 String dd=(String) re 阅读全文
posted @ 2021-04-14 11:09 蒙恬括 阅读(480) 评论(0) 推荐(0) 编辑
摘要:转载:https://blog.csdn.net/worldchinalee/article/details/83790790 说下结论:就是用if判断的话,唤醒后线程会从wait之后的代码开始运行,但是不会重新判断if条件,直接继续运行if代码块之后的代码,而如果使用while的话,也会从wait 阅读全文
posted @ 2021-04-14 08:24 蒙恬括 阅读(682) 评论(0) 推荐(0) 编辑
摘要:直接上图: $$参数是什么意思,可以点击右侧的tab查看,注意,javap命令是编译class文件。所以我们使用的时候点击需要的查看的class文件,右键找到这个功能即可: 阅读全文
posted @ 2021-04-13 23:57 蒙恬括 阅读(174) 评论(0) 推荐(0) 编辑
摘要:竟然忘了接口是可以多继承的,罪过罪过 阅读全文
posted @ 2021-04-02 12:30 蒙恬括 阅读(88) 评论(0) 推荐(0) 编辑
摘要:上篇文章记录到volatile在硬件层面怎么保证线程间可见性的,是通过lock锁缓存行缓存一致性协议来实现的。但是这样会有一个伪共享的问题。 首先缓存行在64bit机中一般为64字节,具体缓存行大小可以通过下面的命令查看: cat /proc/cpuinfo 假设有一个对象有两个long类型的数据x 阅读全文
posted @ 2021-04-02 00:12 蒙恬括 阅读(2150) 评论(0) 推荐(3) 编辑

点击右上角即可分享
微信分享提示