自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 AQS、ReentrantLock实现原理

大纲:什么是AQS:AQS( AbstractQueuedSynchronizer )是一个用来构建多线程访问共享资源的同步器抽象框架,只需要继承 AQS 就可以很方便的实现我们自定义的多线程同步器、锁,是典型的模板设计模式,父类定义好骨架和部分内部操作细节,具体规则由子类去实现。是整个JUC包的基石,ReentrantLock、ReadWriteLock、CountDowndLatch、CyclicBarrier、Semaphore、ThreadPoolExe...

2022-05-12 10:17:01 188

原创 LongAdder类实现原理、源码解析

1. 概述AtomicLong通过循环CAS实现原子操作,缺点是当高并发下竞争比较激烈的时候,会出现大量的CAS失败,导致循环CAS次数大大增加,这种自旋是要消耗时间cpu时间片的,会占用大量cpu的时间,降低效率。那这个问题如何解决呢?JUC给我们提供了一个类,LongAdder, 它的作用和AtomicLong是一样的,都是一个实现了原子操作的累加器,LongAdder通过维护一个基准值base和 Cell 数组,多线程的时候多个线程去竞争Cell数组的不同的元素,进行cas累加操作...

2022-04-25 21:44:41 3258

转载 java多线程学习<二>--多线程常用方法

创建方式thread线程创建的三种方式_NokeNoke的博客-CSDN博客线程的启动过程Java线程 start()方法执行后,会向操作系统去请求创建一个线程返回给JVM,JVM接收到线程创建成功之后会等待操作系统调度,系统激活线程后执行任务应用层:通过实现一个 Runnable接口,然后将接口的实例作为参数传递到JDK提供的Thread类中。JDK层:通过JNI的方式来调用给JVM虚拟机。线程调度模块:根据当前运行的操作系统来调用对应的系统线程触发接口来创建具体的线程进行执行.

2022-03-14 14:42:04 257

原创 Java多线程学习<一>--什么是多线程及其优劣势

为什么需要多线程 计算机cpu从单核到多核, 需要处理的任务也越来越多,多线程的出现,便是为了更好的利用多核cpu的利用率 cpu在读取L1,L2,内存,磁盘的数据的时候,速度差距很大,导致cpu空余时间一直在等待状态,性能浪费,在cpu空余的时候,如果去执行其他任务,就会将其性能充分地利用起来 线程的创建相对于进程而言开销更小,而且线程间通讯也更加方便,线程与线程之间就如同同一个房间不同的座位一样,而进程之间就如同同一个屋檐下的相对独立的不同房间多线程是什么从资料的中linux

2022-03-08 14:07:09 172

原创 mongdb

1.安装官网下载安装包 解压,配置环境变量(也可不配置) 创建 data 和 log 文件夹 执行 mongod --dbpath data --logpath log/mongod.log --logappend --fork--dbpath 指定为刚才创建好的data目录--logpath 指定log存放位置--logappend mongo在后台运行2. 常用命令show dbs;...

2021-11-30 18:13:01 156

原创 Http协议

超文本传输协议HTTP请求报文由3部分组成(请求行+请求头+请求体):1.请求行GET /day01/1.html HTTP/1.1GET: 请求方式/day01/1.html:请求地址 “/”——http://127.0.0.1:9090 ?后面是请求参数(用户名密码等等。。。)注意,get请求的请求参数,存在请求行HTTP/1.1:HTT...

2019-06-18 17:32:29 128

原创 SMTP、POP3和IMAP邮件协议

SMTP 发送协议 POP3,IMAP 收取协议(IMAP功能更强,现在基本用IMAP) 收发邮件流程: 上图中最后接受邮件的协议为POP3/IMAP用户代理(foxmail/outlook/网易邮箱大师)设置收发件服务器参考 :https://blog.csdn.net/csdn9988680/article/details/80700641...

2019-06-18 13:53:58 592

原创 集合

拓容http://www.cnblogs.com/heyonggang/p/9112731.htmlarrayList初始容量为10 拓容计算方式简单理解为((旧容量 * 3) / 2) + 1hashMap初始容量为16 拓容每次都加倍,知道Integer的最大值//因为每次都是加倍,所以最终肯定会加倍到MAXIMUM_CAPACITY,会进入这个分支。 if (oldCap...

2019-05-16 13:54:32 160

原创 线程

synchronized和ReentrantLock之多线程同步详解https://www.jianshu.com/p/96c89e6e7e90notify(),notifyAll()锁池,等待池https://blog.csdn.net/djzhao/article/details/79410229让线程阻塞的几种方法join()方法,Executor的invokeAll()方法...

2019-05-16 11:09:52 141

转载 java位运算

最近在看hashMap的源码的时候看到hashMap构造方法会对传入的initialCapacity初始与maximum_capacity比较static final int MAXIMUM_CAPACITY = 1 << 30;所以网上看了一下位运算的含义,具体的细节不过多研究,目的主要是为了看到的时候能明白计算结果1.左移 左移运算符“<<” - ...

2019-05-15 17:25:31 181

原创 comparable接口,arrayList中对象排序

comparable接口,arrayList&lt;&gt;排序https://blog.csdn.net/chunxiaqiudong5/article/details/527600581.要比较的实体类继承Comparable接口2.重写comparaTo()方法;在该方法中可以设置计较策略,result=this.age.compareTo(o.getAge());...

2019-03-04 22:08:07 504

原创 Intellij Idea创建springboot+jsp项目

1.创建的时候选择web2.创建成功后,手动在java目录下添加 webapp/web-inf/views文件夹,创建jsp页面 3.设置web资源路径为webapp路径4. 添加依赖,主要是下面三个依赖,有个坑需要注意,jasper包的&lt;scope&gt;provide&lt;/scope&gt;需要注释掉,否则访问会4045. 设置视图解析器的路径6....

2018-12-10 21:33:15 225

转载 clearfix 清除浮动

http://www.runoob.com/try/try2.php?filename=trybs_grid_ex7-block &lt;!DOCTYPE html&gt;&lt;html&gt;&lt;head&gt;   &lt;meta charset="utf-8"&gt;    &lt;title&gt;Bootstrap 实例 - 响应式的列重置&lt;/title&amp

2018-09-28 09:33:08 686

原创 sleep( ) 和 wait( ) 的区别

参考:Java技术栈公众号文章sleep(休眠) 和 wait(等待) 方法是 Java 多线程中常用的两个方法,它们有什么区别及一些该注意的地方有哪些呢?下面给大家一一分解。区别1:使用限制使用 sleep 方法可以让让当前线程休眠,时间一到当前线程继续往下执行,在任何地方都能使用,但需要捕获 InterruptedException 异常。try{Thre...

2018-09-19 14:27:43 330

原创 编程百科

DLL文件DLL是Dynamic Link Library的缩写,意为动态链接库。在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。当我们执行某一个程序时,相应的DLL文件就会被调用。一个应用程序可有多个DLL文件,一个DLL文件也可能被几个应用程序所共用,这样的DLL文件被称为共享DLL文件。DLL文件一般被存放在C...

2018-09-19 09:40:09 293

原创 com.alibaba.fastjson使用总结

json的解析最主要的工作就是,javaBean对象,json对象,json格式字符串之间的相互转换参考博客:写的比较全面,简单易懂https://segmentfault.com/a/1190000011212806注意:json格式字符串需要满足:String mediaList = "[{\"mediaId\":11,\"mediaName\":\"abc\"},{\"m...

2018-08-15 18:41:21 932

原创 springboot-thymeleaf,springboot-jpa,label插件

简单案例代码:https://github.com/nokekang/thymeleafjpa.git注意事项:a.静态资源访问          static下的js文件夹中的jquery.js访问方式为           &lt;script type="text/javascript" src="/js/jquery.js"&gt;&lt;/script&gt;b....

2018-08-08 09:34:14 218

原创 @Async异步调用

1.项目启动类上加@EnableAsync@SpringBootApplication@EnableAsync//允许异步public class SpringbootScheduledApplication { public static void main(String[] args) { SpringApplication.run(SpringbootSc...

2018-08-06 14:03:29 420

原创 thread线程创建的三种方式

方法1.创建类继承Thread类,调用.start()方法public class NewThread1Test { private Log log = LogFactory.getLog(NewThread1Test.class); @Test public void test1(){ new MyThread1().start(); ...

2018-08-03 17:47:35 347

原创 @Resurce和@Autowired的区别

@Resurce和@Autowired的区别 @Component、@Repository、@Service和 @Controller等标注的默认Bean名称会是小写开头的非限定类名 @Resource 默认按名称装配,当找不到名称匹配的bean再按类型装配.@Resource(name="beanName")指定了name属性,按名称注入但没找到bean, 就不会再按类型装...

2018-08-03 11:11:24 950

原创 springboot Scheduled定时器 单线程多线程实现

springboot单线程定时任务很简单:1. 在项目启动类上加@EnableScheduling注解只有加了这个注解,才能扫描到@Scheduled注解, 定时器才会起作用@SpringBootApplication@EnableScheduling//允许使用定时器public class SpringbootScheduledApplication { publ...

2018-08-02 16:43:25 4990 4

原创 SQL复习--记录sql的基本知识中的一些注意事项

SQL 对大小写不敏感:SELECT 与 select 是相同的。SELECT 语句用于从数据库中选取数据。 结果被存储在一个结果表中,称为结果集。cmd访问mysql的方法 mysql -hlocalhost -uroot -pSQL 使用单引号来环绕文本值(大部分数据库系统也接受双引号)。运算符 运算符 描述 = 等于 &lt;&gt; 不等于。注释:在 SQ...

2018-07-31 15:23:27 272

原创 没有整理选项,新版谷歌浏览器如何导出书签

    1.google浏览器地址栏最右边,自定义及控制---&gt;书签-----&gt;书签管理器    2. 右上角,有整理图标,3.点击按钮即可导入导出书签

2018-05-21 15:13:53 5301

转载 markdown-使用频率较高的常用markdown实例

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I ...

2018-05-21 15:09:33 299

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除