最新 最热

ScheduledExecutorService scheduleAtFixedRate抛出异常后定时任务不会再执行源码分析

ScheduledExecutorService有时会被用来实现本地的定期任务执行,常规使用方式如下所示:

2024-04-20
4

Redisson源码(二)延迟队列RDelayedQueue的使用及原理分析

在工作中,我们有时候会遇到这样的场景,比如下单之后超过30分钟未支付自动取消订单,还有就比如过期/生效通知等等,这些场景一般有两种方法解决: 第一种可以通过定时任务扫描符合条件的去执行,第二种就是提前通过消息队列发送...

2024-03-02
2

02-vue源码分析之 vue3.0为何弃用Object.defineProperty而选择Proxy

在3.0中 双向绑定将会使用Proxy来代替2.x版本的Object.defineProperty,那么我们来看一下Proxy对比defineProperty优势在哪 首先这两种都是基于数据劫持实现的双向绑定...

2024-02-29
1

jetcache源码分析之Cached注解

jetcache是阿里旗下的一款缓存框架,详情不在这里赘述,下面直入主题,聊聊jetcache的@Cached注解的工作原理,@Cached注解底层是通过动态代理实现的,那么具体@Cached背后的工作原理是什么呢,下面进入细节...

2024-02-25
1

Redisson源码(一)RedissonLock加锁与解锁过程原理分析

在当今分布式微服务架构流行的情况下,显然在传统单体项目中使用的JDK自带的锁已经不能解决资源竞争的问题了, 进而出现的解决方案有1)利用数据库 2)redis 3)zookeeper,经过验证的是利用redis做分布式锁无论在可用性、可...

2024-02-23
2

聊聊ChatGLM-6B源码分析(二)

GLM模型中位置编码是2D的,有两层的位置表示,分别是序列的位置表示和mask block的位置表示。由get_position_ids函数处理。position_ids对应GLM论文中的postion 1,block_position_ids对应GLM论文中的position 2。...

2024-01-13
2

【Rust 研学】 sudo-rs 源码分析 Part 1

这是一个独特的、付费的学习社区,专注于探索和理解开源项目中的 Rust 代码。在这里,你将有机会不仅学习 Rust 的基础知识,还能深入其核心概念和实际应用。我们的目标是通过实际的代码案例,让你在 Rust 编程领域迅速成长。...

2024-01-02
1

Broker注册到NameServer源码分析

RocketMQ一个用Java写的开源项目,而且也是阿里开源的,所以想看一看设计思路以及一些细节,所以就写了这篇博客,记录一下Broker注册到Nameserver的过程以及心跳逻辑。...

2023-12-25
0

RateLimiter源码分析

如下图所示,我创建一个1秒产生0.1的RateLimiter(即10秒产生1个),左边是时间轴,现在有3个线程申请数据,nextFreeTicketMicros初始化为0(其实他的计算单位是微秒)...

2023-12-25
1

ReentrantLock源码分析笔记-单线程公平锁为例

如果被请求的共享资源空闲,则将当前请求资源的线程设置为有效的工作线程,并将共享资源设置为锁定状态,如果被请求的共享资源被占用,那么就需要一套线程阻塞等待以及被唤醒时锁分配的机制,这个机制AQS是用CLH队列锁实现的,即...

2023-12-25
1