摘要:
重入锁ReentrantLock是排它锁,当一个线程获得锁时,其他线程均会处于阻塞状态。 而对于互联网产品来说,大多数情况是读多写少,不需要每次操作都阻塞,只需要保证在写的场景下,其他读锁处于阻塞状态,等写线程释放锁后,读请求才能执行;若没有写操作的情况下,读请求不需要阻塞线程。为此,JDK1.5提 阅读全文
摘要:
在多线程操作过程中,锁是保证原子性和可见性的重要方式,synchronized关键字是隐式获取锁的方式,Lock类比synchronized关键字更加灵活,是显示获取锁的方式。本文将详细了解ReentrantLock类。 1. ReentrantLock基本使用 使用该类比较简单,初始化该类后,使用 阅读全文
摘要:
Windows安装 Redis推荐使用Linux版本,但是也有64位的windows版本,打开官网(https://redis.io/),官网首页直接下载的版本是Linux版本的,若要下载windows版本,点击更多 点击该链接,里面有版本的msi安装版本,也有zip版本的文件,如下: 下载解压后直 阅读全文
摘要:
一、在163邮箱设置处设置POP3/SMTP/IMAP 二、开启客户端授权码 三、打开Outlook,选择手动设置 选择POP/IMAP 密码是上文中的授权码 点击其它设置,勾选以下选项 点击完成即可 阅读全文
摘要:
Windows Windows系统的安装比较简单,直接在官网(http://nginx.org/en/download.html)下载zip压缩包,然后解压到本地目录,在该目录下用命令行执行./nginx即可启动,在浏览器端输入localhost即可显示nginx首页。 Linux 以CentOS7 阅读全文
摘要:
使用方法:concat(str1,str2,…) 返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。 mysql> select concat('11','22','33');+ +| concat('11','22','33') |+ +| 112233 |+ + 阅读全文
摘要:
对各种方法实现get方法的性能进行了一个测试。 总共有5个测试,,每个测试都是执行1亿次 1. 直接通过Java的get方法 2.通过高性能的ReflectAsm库进行测试 3.通过Java Class类自带的反射获得Method测试 4.使用Java自带的Property类获取Method测试 5 阅读全文
摘要:
检查端口可能有很多种方式,这里介绍两种简单的方式。 以Windows10为例 可以使用Windows系统自带的telnet命令,注:Windows默认没有打开Telnet功能 若需要使用此方式,需要打开该功能。操作步骤如下: 在Windows设置 -> 应用 -> 应用与功能 -> 程序和功能 -> 阅读全文
摘要:
如果有多个目录,Gitbook在浏览器上打开时,默认所有的目录都会打开,当目录比较多时,全部显示不利于阅读。 可以使用插件配置目录折叠,使得打开浏览器时这些目录默认是关闭的。 在执行gitbook init主目录下增加book.json文件做定制化配置 配置目录折叠功能如下: { "plugins" 阅读全文
摘要:
GitBook是基于Nodejs,使用Git/Github和Markdown制作电子书的命令行工具。 1、安装Nodejs 首先,安装Nodejs,官网地址:https://nodejs.org/en/ 安装完成后输入命令node -v检测是否安装成功 2、安装全局Gitbook 在Nodejs安装 阅读全文