自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java并发知识点

同步代码块monitorenter、monitorexit来标识,同步代码块是通过monitorenter指令进入,monitorexit释放锁,在执行monitorexit之前需要尝试获取锁,如果对象没有被锁住,或者当前线程已经拥有了这个对象的锁,那么锁计数器+1,当执行monitorexit指令时,计数器-1,获取锁失败就阻塞,直到释放锁。他们的底层实现其实都一样,在进入同步代码之前先获取锁,获取到锁之后锁的计数器+1,同步代码执行完锁的计数器-1,如果获取失败就阻塞式等待锁的释放。...

2022-07-19 19:03:49 469 1

原创 Guava-Splitter

这里返回的SplittingIterator继承了AbstractIterator,而AbstractIterator是Iterator的实现类,AbstractIterator使用私有的枚举变量state来记录当前的迭代进度,比如是否找到了下一个元素,迭代是否结束等。Splitter可以根据字符、字符串、正则、长度还有Guava自己的字符匹配器CharMatcher来拆分字符串,基本上每种匹配模式的查找方法都不太一样,但是字符拆分的基本框架又是不变的,所以策略模式正好合用。...

2022-07-19 19:02:45 1027

原创 BlockingQueue

获取元素阻塞的方式就是通过notEmpty和notFull来进行通知,如果获取数据,队列为空这个时候notEmpty就会await()获取元素的方法线程就会等待,等到下一个线程添加元素进入到enqueue()方法就会notEmpty.signal()通知可以进行获取。如果队列满了notFull就会await(),此时这个线程就会阻塞,等到一下次别的线程获取队列元素就会通知notFull.signal(),此时获取到锁的现在就不阻塞并添加元素进队列。2、add(e),不阻塞,会抛出异常,。...

2022-07-19 19:01:12 133

原创 SSM+thymeleaf整合,思路超级清晰!!!

SSM整合配置整合SSM,首先第一步就是要创建好一个Maven项目;其次就是依赖;最后就是繁琐的配置文件啦!!!内容具体如下:打开Java编译软件,创建Maven工程,相信已经SSM整合了,就不用截图一步一步创建Maven项目了把;创建好Maven项目添加Web支持勾选:Web Application然后配置tomcat我相信自己肯定会弄了,我就直接开始下面内容把!导入依赖因为我们创建的是SSM项目,首先考虑到依赖的jar包:单元测试:junit日志:slf4j+log4j2数

2020-12-15 22:30:14 2285 1

原创 hashCode与equals的关系!!!

hashCode与equals为什么重写 equals 时必须重写 hashCode 方法?hashCode:作用:获取哈希码,也成为散列码;实际上就是一个int类型的整数。哈希码的作用也就是确定这个对象在散列表中索引的位置。hashCode这个方法存在于Object类中,所以任何类都包含了hashCode这个函数。为什么要有hashCode?上面说了hashCode就是确定其在散列表中的位置,例如一个类重写了hashCode方法存储于散列表中,就可以根据这个hash值来快速索引到对

2020-12-15 20:33:46 90

原创 C语言创建TCP连接

[TCP编程]服务端: 1、加载套接字,版本号,创建协议:socket();(服务端地址可接受任何IP) 2、绑定IP,端口 接口sockaddr_in 方法:bind(); 3、增加监听 list; 4、循环接收数据 accept()接受客户端的请求; 4、发送,接受:send(),recv().#include <stdio.h>#include <...

2019-06-02 20:45:18 781

原创 Mysql-connector-java(5.1)版本以上连接错误

mysql-connector-java:8.0连接错误问题连接com.mysql.jdbc.Driver报错报错代码: try { Class.forName("com.mysql.jdbc.Driver"); Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/te...

2019-04-09 19:39:45 1947

原创 JavaIO流章节手动笔记

IO流章节知识点一、节点流:离数据流|程序最近的流1、字节流:可以处理一切(纯文本,音频,视频,图片)1)、输入流 :InputStream FileInputStream ByteArrayInputStream操作 read()输出、拷贝2)、输出流:OutputStream FileOutputStream ByteArrayOutputStream操作 write()输入...

2019-03-10 18:28:45 118

原创 线程知识点手动笔记

线程方面笔记概念一、程序 进程 线程1、程序:指令集 静态概念2、进程:操作系统 调度程序 动态概念3、线程:在进程内多条执行路径创建一、继承Thread+run()启动:创建子类对象+对象.start()二、实现Runnable+run()启动:使用静态代理1、创建真实角色2、创建代理角色+Threaad+引用3、代理角色.start()推荐使用接口1、避免单继承...

2019-03-10 18:11:29 128

原创 栈的应用,小型计算器

C语言栈应用四则运算计算器运动到栈的最基本的几个增删的功能。举例12+83+(2+32)栈的存放:12 8 3*+(2 3 2*+)+运算规律:首先往数据栈里面存放数据,一旦遇到运算符就放到运算符栈里面,直到第二个数据,第二个运算符然后比较优先级,如上例子数据栈存放就是12 8 符号栈存放的就是+ *,然后遇到+比 ✖的运算符低3首先存放数据栈,然后8和3进行乘法运算数据栈里面就变成...

2019-02-14 22:55:44 186

原创 KMP简易记住next数组值

对于KMP算法简易的记住next数组值其实对于KMP算法中的next函数值只和模式串有关,而与母串毫无关系,只要针对子串就行了。例如:序 号 1 2 3 4 5 6 7 8模式串 T: a b a a b c a c之后我们把前缀和后缀求出来:aa ba ...

2018-12-03 21:38:35 303

空空如也

空空如也

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

TA关注的人

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