2025年10月27日
摘要: 阅读全文
posted @ 2025-10-27 10:58 Hi Martin 阅读(2) 评论(0) 推荐(0)
  2025年9月11日
摘要: 1、初始连接 最小连接数 最大连接数 最大连接数一定要大 ,假如配小了,如果连接都是同一时间创建,那么很有可能连接同一时间过期,那么就会有问题了。所有要岔开同一时间过期的问题 minEvictableIdleTimeMillis 一般设置长点儿 比如半个小时 阅读全文
posted @ 2025-09-11 17:14 Hi Martin 阅读(8) 评论(0) 推荐(0)
  2025年5月21日
摘要: Object a; Object b = a; 用a去做操作,说明b有可能被改变 移位操作 1 << 5 表示1向左移动5位。 0010 0000 阅读全文
posted @ 2025-05-21 00:13 Hi Martin 阅读(11) 评论(0) 推荐(0)
  2025年5月8日
摘要: 1、使用setnx设置key。 2、保证自己删线程的时候不去删除别人的。 3、设置线程key的作用时间,不会永久。 4、系统启动时可以先清空这个redis key值。 那么如何实现呢? 见下面代码: String script = "if redis.call('get', KEYS[1]) == 阅读全文
posted @ 2025-05-08 18:30 Hi Martin 阅读(19) 评论(0) 推荐(0)
摘要: 使用seata作为分布式事务 ## Nacos下载和安装 官网网址:https://nacos.io/zh-cn/index.html ![image-20210915113531807](image-20210915113531807.png) 官网文档网址:https://nacos.io/zh 阅读全文
posted @ 2025-05-08 15:45 Hi Martin 阅读(13) 评论(0) 推荐(0)
  2025年5月5日
摘要: java sdk提供的线程池:java.util.concurrent.ThreadPoolExecutor,由java.util.concurrent.Executors 创建, Spring 提供的线程池 ThreadPoolTaskExecutor 为什么要使用线程池 在开发中,为了提升效率的 阅读全文
posted @ 2025-05-05 17:14 Hi Martin 阅读(29) 评论(0) 推荐(0)
摘要: 1、Java 中所有参数传递都是值传递,没有真正的引用传递。即使是对象引用,传递的也是引用的副本(即引用的值)。 Object A = new Object(); Object B = A; 假如后面有一个参数 new 了过后, 上面的两个参数都没关系了。 public static void ma 阅读全文
posted @ 2025-05-05 16:30 Hi Martin 阅读(22) 评论(0) 推荐(0)
摘要: JUC面试: Java JUC是Java Util Concurrent的缩写,指的是java.util.concurrent工具包,这是Java中处理并发编程的核心库。里面的很多功能都是基于ReetrantLock来实现的。比如 ArrayBlockingQueue、 SynchronousQue 阅读全文
posted @ 2025-05-05 00:01 Hi Martin 阅读(19) 评论(0) 推荐(0)
  2025年5月3日
摘要: 锁的分类: 1、重入锁和不可重入锁 当前线程是否可以重入锁。synchronized、ReentrantLock、ReentrantReadWriteLock都是可重入锁。 2、乐观锁和悲观锁 用户态、内核态,jvm如果可以直接发指令让cpu去执行,不需要操作系统调度,那么这个就是用户态需要借助操作 阅读全文
posted @ 2025-05-03 02:02 Hi Martin 阅读(37) 评论(0) 推荐(0)
  2025年4月30日
摘要: 线程基础概念: 进程是线程的容器,进程是操作系统分配的资源。 线程是由操作系统的线程调度器的,调度器基于以下因素动态分配CPU资源: ‌优先级‌:线程的优先级(如实时任务优先)。 ‌时间片轮转‌:每个线程分到固定时间片,用完后切换(抢占式调度)。 ‌公平性‌:避免某些线程长时间占用CPU(如Linu 阅读全文
posted @ 2025-04-30 00:24 Hi Martin 阅读(20) 评论(0) 推荐(0)