mxllcf

导航

2023年10月18日 #

MESI缓存一致性协议以及Volatile

摘要: MESI(Modified, Exclusive, Shared, Invalid)是一种缓存一致性协议,用于解决多处理器系统中,多个处理器对同一块内存的并发读写可能导致的数据不一致性问题。MESI协议维护了每个缓存行的四种状态: Modified(M): 表示缓存行已被修改,并且是唯一的拷贝。当其 阅读全文

posted @ 2023-10-18 10:29 mxllcf 阅读(80) 评论(0) 推荐(0) 编辑

2023年10月17日 #

Redis如何实现自动续期

摘要: 在Redis中,可以使用Lua脚本结合SET命令和EXPIRE命令来实现自动续期和加锁的操作。可以在给定的超时时间内自动续期锁。 local lockKey = KEYS[1] -- 锁的键名 local lockValue = ARGV[1] -- 锁的值 local lockTimeout = 阅读全文

posted @ 2023-10-17 14:53 mxllcf 阅读(889) 评论(0) 推荐(0) 编辑

2022年7月25日 #

redis中的zest

摘要: Zset也就是sortset,它的底层数据结构包括ziplist或skiplist,在同时满足下列两个条件的时候使用ziplist: 有序集合保存的元素数量小于128个 有序集合保存的所有元素的长度小于64字节 其他时候使用skiplist,主要用在比如成绩排序啊,比如点赞数量,排行榜等。 阅读全文

posted @ 2022-07-25 21:20 mxllcf 阅读(226) 评论(0) 推荐(0) 编辑

2022年7月2日 #

LongAdder

摘要: 事情的开头是因为在阿里巴巴开发手册上看见了这个,建议在jdk8 的环境下,使用LongADDer对象,会比AtomicLong效率高。 实践得出。。。。的确高了一个位,在这里记录一哈。。 保证i++的操作: volatile不能保证原子性和线程安全,加同步锁可以,但是过于复杂,,杀鸡焉用牛刀?? 可 阅读全文

posted @ 2022-07-02 11:09 mxllcf 阅读(39) 评论(0) 推荐(0) 编辑

2022年1月21日 #

线程池了解么?

摘要: 首先说一下线程实现方法中,实现 Runnable 接⼝和 Callable 接⼝的区别?Runnable接口不会返回结果以及抛出异常,但是Callable是可以的,所以如果任务不需要返回结果或抛出异常推荐使⽤ Runnable 接⼝,这样代码看起来会看起来更加简洁。为什么要⽤线程池? 1、降低资源消 阅读全文

posted @ 2022-01-21 15:16 mxllcf 阅读(31) 评论(0) 推荐(0) 编辑

重写 equals需要重写hashCode吗?

摘要: ==与equals: == : 它的作⽤是判断两个对象的地址是不是相等。即,判断两个对象是不是同⼀个对象(基本数据类型==⽐较的是值,引⽤数据类型==⽐较的是内存地址)。 equals() : 它的作⽤也是判断两个对象是否相等。但它⼀般有两种使⽤情况: 情况 1:类没有覆盖 equals() ⽅法。 阅读全文

posted @ 2022-01-21 14:57 mxllcf 阅读(72) 评论(0) 推荐(0) 编辑

2022年1月13日 #

人人网实习面试总结

摘要: 10点开始,10点30结束。 1、自我介绍 2、你了解哪些java数据结构,拿一个出来仔细讲。我从栈和队列开始讲,,于是翻车了。。随后我重新讲hashmap,接着指出hashmap的并发不安全,引出了concurrenthashmap。 3、多线程?应用在哪些场景。并发关键字。我从sync。vola 阅读全文

posted @ 2022-01-13 11:01 mxllcf 阅读(33) 评论(0) 推荐(0) 编辑

2022年1月8日 #

快速排序JAVA实现

摘要: 快排的原理是: 选择一个关键值作为基准值,(可以选择第一个,也可以选择最后一个,或者随便选一个,我习惯选第一个)。 将比基准值大的都放在右边的序列中,将比基准值小的都放在左边的序列中。 具体循环过程:从后向前比较,用基准值和最后一个值进行比较。如果比基准值小,则换位,如果比基准值大,则继续比较下一个 阅读全文

posted @ 2022-01-08 13:41 mxllcf 阅读(208) 评论(0) 推荐(0) 编辑

2021年12月29日 #

leetcode334题 递增的三元子序列

摘要: 给你一个整数数组 nums ,判断这个数组中是否存在长度为 3 的递增子序列。 如果存在这样的三元组下标 (i, j, k) 且满足 i < j < k ,使得 nums[i] < nums[j] < nums[k] ,返回 true ;否则,返回 false 我的思想: 遍历两次,第一次遍历,从倒 阅读全文

posted @ 2021-12-29 22:14 mxllcf 阅读(25) 评论(0) 推荐(0) 编辑

2021年12月12日 #

Java读写锁代码实现

摘要: 读写锁的代码实现。使用到了juc下的一个接口,ReentrantReadWriteLock。可重入的读写锁。 package deadlock; import java.util.HashMap; import java.util.Map; import java.util.concurrent.T 阅读全文

posted @ 2021-12-12 14:08 mxllcf 阅读(156) 评论(0) 推荐(0) 编辑