重入锁ReentrantLock[Re entrant Lock] 1. ReentrantLock与Synchronized区别: 1. 重入锁可以反复进入 2. 如果同一个线程多次获得锁,那么在释放锁的时候,也需要释放相同次数 3. 若释放锁的次数过多,将会得到 java.lang.Illega ...
分类:
其他好文 时间:
2020-03-31 21:15:52
阅读次数:
74
重量级锁?自旋锁?自适应自旋锁?轻量级锁?偏向锁?悲观锁?乐观锁?执行一个方法太难了,到处都是锁。 重量级锁 如果你学过多线程,那么你肯定知道锁这个东西,至于为什么需要锁,我就不给你普及了,就当做你是已经懂的了。 我们知道,我们要进入一个同步、线程安全的方法时,是需要先获得这个方法的锁的,退出这个方 ...
分类:
其他好文 时间:
2020-03-31 14:05:07
阅读次数:
72
#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>#include <string.h>#define MAX 21 //要求 A:定义一个长度为 21 的字符数组,用于存放用户输入的文本;//要求 B:如果用户输 ...
分类:
其他好文 时间:
2020-03-31 12:07:01
阅读次数:
85
https://blog.csdn.net/MR_L_0927/article/details/84784482 简单的方法是 直接在Controller内的接口参数前加上校验注解(@NotBlank...等),此时需在类上加注解 @Validated即可.当校验参数过多,这种方法使接口参数看起来过 ...
分类:
编程语言 时间:
2020-03-31 10:40:47
阅读次数:
177
单例模式:系统只存在一个该类的一个对象 1) 节省了系统资源,对于一些需要频繁创建销毁的对象,使用单例模式可以提高系统性能 2) 单例模式使用的场景:需要频繁的进行创建和销毁的对象、创建对象时耗时过多或耗费资源过多(即:重量级对象),但又经常用到的对象、工具类对象、频繁访问数据库或文件的对象(比如数 ...
分类:
其他好文 时间:
2020-03-30 12:38:56
阅读次数:
65
1. devops-持续集成管理之SonarQube 1) 代码质量七宗罪 编码规范:是否遵守了编码规范,遵循了最佳实践。 潜在的BUG:可能在最坏情况下出现问题的代码,以及存在安全漏洞的代码。 文档和注释:过少(缺少必要信息)、过多(没有信息量)、过时的文档或注释。 重复代码:违反了DontRep ...
分类:
其他好文 时间:
2020-03-30 11:27:47
阅读次数:
81
数据类型支持: String: key-value 二进制安全(binary safe),可存储json、JPEG格式字符串 List:双向链表 实现消息队列最经济方式 Set:key-(value1,value2,value3) 共同好友列表 Hash: key-field-value 灵活性、内 ...
分类:
其他好文 时间:
2020-03-29 12:59:55
阅读次数:
72
RAC突然告警,客户端尝试连接时会报:ORA-12520: TNS:listener could not find available handler for requested type of server 错误。 现整理解决过程,以便于后续遇到此问题时快速处理。 1. 登入服务器,使用sqlpl ...
分类:
数据库 时间:
2020-03-29 09:12:07
阅读次数:
300
一、前言 由于最近的项目需要具有复选功能,但过多的复选框会影响界面布局和美观,因而想到把 PyQt5 的下拉列表和复选框结合起来,但在 PyQt5 中并没有这样的组件供我们使用,所以想要自己实现一个下拉复选框,主要就是继承 QComboBox 类,然后将复选框 QCheckBox 加入其中,并实现相 ...
分类:
其他好文 时间:
2020-03-28 21:57:54
阅读次数:
114
一、模板模式 1、模板模式(Template Method pattern):指定义一个算法的骨架,并允许子类为一个或者多个步骤提供实现。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法的某些步骤。(属于行为型模式) 2、适用场景 一次性实现一个算法的不变的部分,并将可变的行为留给子类来实 ...
分类:
其他好文 时间:
2020-03-28 19:41:33
阅读次数:
84