Love&Share

摘要: 一 导读 想象一条双向四车道的道路(带宽),当其中只有10辆车通过同一路段的时候,行驶还比较通畅,若其中有100辆车通过同一路段的时候,那行驶会大大受限,速度可能只有10km/h。当其中有1000辆车同时进入这个路段通行,结果可想而知,直接堵死(这就是死锁)。这个时候如果在开始有一个交警站在路口 , 阅读全文

posted @ 2021-01-05 17:52 Love&Share 阅读(474) 评论(0) 推荐(2) 编辑

2022年8月13日

师爷,你给翻译翻译什么叫工厂模式?

摘要: 师爷,你给翻译翻译什么叫工厂模式? 写在前面: 初为职场新手,难免会把代码写的一把梭。遇到业务的时候直接if-else干。但是本着不想被开除的原则,还是学习一下设计模式,今天来看看设计模式之工厂模式。 用需求引出代码: 最近正在开发抽奖系统,系统当中有个业务是发奖业务,奖品有优惠券,实物商品,第三方优惠券。当用户抽中对应的奖品之后,我 阅读全文

posted @ 2022-08-13 20:29 Love&Share 阅读(74) 评论(0) 推荐(1) 编辑

2022年4月9日

希尔排序

摘要: 思想: 逐步分组进行粗调,最后进行插入排序。 分组的话一开始两个元素之间相隔的距离是总元素数量的一半,然后再变为1半,最后变为1,每一次都是使用插入排序来做的,我排两个元素和一个元素,总比排很多个元素要好。 代码: public static void sort(int[] nums) { int 阅读全文

posted @ 2022-04-09 10:47 Love&Share 阅读(7) 评论(0) 推荐(0) 编辑

2022年4月7日

如何划分与组织内存(上)?

摘要: 1)本节我们要接触内存了,那我们用最通俗的语言来类比操作系统和内存的关系应该是怎样的? 操作系统是政府,内存是土地。政府必须合理规划好土地,人民才能安居乐业。 2)既然要规划内存,那我们规划的基本单位有哪两种? 分段和分页 3)分段和分页有什么区别呢?我们设计操作系统的时候应该怎样选择? 表示方式和 阅读全文

posted @ 2022-04-07 19:33 Love&Share 阅读(20) 评论(0) 推荐(0) 编辑

2022年4月2日

java的原子类到底是啥?ABA,CAS又是些什么?

摘要: 1)解决并发不是用锁就能解决吗,那SDK干嘛还要搞个原子类出来? 锁虽然能解决,但是加锁解锁始终还是对性能是有影响的,并且使用不当可能会造成死锁之类的问题。 2)原子类是怎样使用的,比如说我要实现一个线程安全的累加器? public class Test { AtomicLong count = n 阅读全文

posted @ 2022-04-02 15:17 Love&Share 阅读(260) 评论(0) 推荐(0) 编辑

2022年3月31日

并发容器的前世今生是怎样的?

摘要: 1)我们java中的容器大致可以分为哪几类? list set map queue 2)线程安全容器的进化史是怎样的? 1.5之前,我们的线程安全容器都是用synchronized修饰的,这样的话串行度很高,程序的性能就比较拉跨。这时的容器 只能叫做同步容器 1.5之后,我们用了写时复制技术,保障线 阅读全文

posted @ 2022-03-31 12:17 Love&Share 阅读(12) 评论(0) 推荐(0) 编辑

2022年3月30日

CountDownLatch和CyclicBarrier:如何让多线程步调一致?

摘要: 案例:对账系统的业务是这样的,用户通过在线商城下单,会生成电子订单,保存在订单库;之后物流会生成派送单给用户发货,派送单保存在派送单库。为了防止漏派送或者重复派送,对账系统每天还会校验是否存在异常订单。对账系统的处理逻辑很简单,系统流程图如下。目前对账系统的处理逻辑是首先查询订单,然后查询派送单,之 阅读全文

posted @ 2022-03-30 22:26 Love&Share 阅读(370) 评论(0) 推荐(2) 编辑

设置工作模式与环境(中):建造二级引导器

摘要: 1)上节课安装的GRUB不是已经 把我们的操作 系统加载到内存中了吗?为什么还要二级引导器? 二级引导器是操作系统的排头兵,他先去收集计算机的信息,看看计算机硬件支持不支持运行我们的操作系统。GRUB负责的是操作系统加载进内存,而二级引导器负责的是检验计算机 能不能运行我们的操作系统,并且初始化好一 阅读全文

posted @ 2022-03-30 17:08 Love&Share 阅读(99) 评论(0) 推荐(0) 编辑

2022年3月29日

读多写少的场景下,竟然还有比读写锁更牛X的锁?

摘要: 1)上一篇文章我们聊了读写锁,他的适用场景是读多写少的场景下,那有没有其它性能比读写锁还要牛逼的锁呢? StampedLock ,java1.8诞生的。 2)StampedLock比读写锁牛在什么地方? 读写锁分为两种:读锁和写锁 StampedLock有三种模式:写锁和悲观读锁,这两个对应我们的读 阅读全文

posted @ 2022-03-29 20:55 Love&Share 阅读(27) 评论(0) 推荐(0) 编辑

2022年3月28日

order by是怎样工作的?

摘要: 看看我们的t表定义是这样的: CREATE TABLE `t` ( `id` int(11) NOT NULL, `city` varchar(16) NOT NULL, `name` varchar(16) NOT NULL, `age` int(11) NOT NULL, `addr` varc 阅读全文

posted @ 2022-03-28 22:23 Love&Share 阅读(70) 评论(0) 推荐(0) 编辑

怎样用读写锁快速实现一个缓存?

摘要: 1)SDK已经有管程了,不是可以解决所有的并发问题的吗,为什么还要有读写锁? 不同的场景下使用不同的锁效果是不一样的,我们的读写锁用在读多写少的场景下那是非常有用的。 2)读写锁是我们JAVA特有的吗?他有什么原则? 读写锁并不是java特有的,是通用的一个技术方案。读写锁的话有三个基本原则: 同一 阅读全文

posted @ 2022-03-28 18:03 Love&Share 阅读(293) 评论(0) 推荐(0) 编辑

导航

收藏已收藏已移除 0

商匡云商
Logo
注册新帐户
对比商品
  • 合计 (0)
对比
0
购物车