摘要: 1. 什么是乐观锁、悲观锁 乐观锁:总是认为会是最好的情况,每次去取数据都认为别人不会修改,所以不会上锁,但是去更新的时候会判断在这期间有没有人对这个值进行修改,一般使用version机制和CAS算法来实现;乐观锁适用于多读的应用类型,这样可以提高吞吐量,像数据库提供的类似于write_condit 阅读全文
posted @ 2019-04-09 10:46 Cryptonym 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 1. 使用线程池的好处 1)降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。 2)提高响应速度。当任务到达时,任务可以不需要等到线程创建就能立即执行。 3)提高线程的可管理性。线程是稀缺资源,如果无限制地创建,不仅会消耗系统资源,还会降低系统的稳定性,使用线程池可以进行统一分配、 阅读全文
posted @ 2019-04-08 17:20 Cryptonym 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 1.多线程的3大特性 原子性:即一个操作或者多个操作 要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行。 可见性:当多个线程访问同一个变量时,一个线程修改了这个变量的值,其他线程能够立即看得到修改的值。 有序性:程序执行的顺序按照代码的先后顺序执行 一般来说处理器为了提高程序运行效率,可 阅读全文
posted @ 2019-04-08 15:43 Cryptonym 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 1.关于多线程 1.1 线程与进程的区别 进程:系统中每一个正在运行的程序都是一个进程,每一个进程执行都有一个执行顺序,该顺序是一个执行路径,或者叫一个控制单元 线程:是一组指令的集合,控制着进程的执行,一个进程中至少有一个线程 1.2 为什么用多线程 使用多线程可以将执行时间长的程序中的任务放到后 阅读全文
posted @ 2019-04-08 11:39 Cryptonym 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 1.GCC没有安装或版本不对 报错信息如下 CC adlist.o /bin/sh: cc: command not found make[1]: *** [adlist.o] Error 127 make[1]: Leaving directory `/usr/local/redis-3.2.1/ 阅读全文
posted @ 2019-04-02 15:13 Cryptonym 阅读(501) 评论(0) 推荐(0) 编辑
摘要: 1.准备工作 去官网下载好你想要安装的redis版本,下载链接 2.搭建步骤 输入命令yum install gcc-c++安装好gcc环境,将下载好的redis安装包上传到 /usr/local 解压redis安装包 tar -zxvf redis-4.0.11.tar.gz 进入解压后的目录进行 阅读全文
posted @ 2019-04-02 11:17 Cryptonym 阅读(545) 评论(0) 推荐(0) 编辑
摘要: 1. 问题描述 昨天下午博主在开发学习的过程中,碰到一个修改了JS无法生效的问题,折腾我不少的时间,现将百度到的解决方案总结一下,以便下次碰到类似问题能够最快的找到解决方案 2 解决方案 2.1 方案1 点击File->setting,搜索框输入compiler,如下图所示: 然后点击apply,o 阅读全文
posted @ 2018-11-16 10:33 Cryptonym 阅读(2251) 评论(0) 推荐(0) 编辑
摘要: IntelliJ IDEA 是一款致力于提供给开发工程师沉浸式编程体验的IDE工具,所以在其中提供了很多方便高效的快捷键,一旦熟练掌握,整个开发的效率和体验将大大提升。本文就按照笔者自己日常开发时的使用频率和体验,再结合各大技术社区的讨论,总结出一份 IntelliJ IDEA 快捷键的最佳指引。 阅读全文
posted @ 2018-11-12 10:33 Cryptonym 阅读(748) 评论(0) 推荐(0) 编辑