51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

最新发布

CountDownLatch 源码详解
Java笔记

CountDownLatch 源码详解

厉飞雨 阅读(41) 评论(0) 赞(3)

一、前言 {#一、前言} ------------ 本篇的介绍对象是 **CountDownLatch** ,它同样是基于 **AQS** 之上扩展的一款多线程场景下的工具类,它可以使一个或多个线程等待其他线程各自执行完毕后再执行。 对于 **CountDownLatch** 理解,我们可以将单次拆开为 **CountDown** 和 **Latch** 。**CountD...

Semaphore 源码详解
经验分享

Semaphore 源码详解

厉飞雨 阅读(54) 评论(0) 赞(3)

一、前言 {#一、前言} ------------ 在高并发访问的场景下,为了保证项目不被大流量请求的压力影响性能导致项目运行崩溃,常用的解决方案就是**限流** 和**服务降级**。 本篇介绍 **Semaphore** , 直译就是信号量,是基于 **AQS** 扩展的一种多线程并发控制的工具,也就是我们常说的**限流**工具之一。 二、工作原理 {#二、工作原理} ...

CAS 原理新讲
软件使用

CAS 原理新讲

厉飞雨 阅读(58) 评论(0) 赞(2)

一、什么是 CAS {#一、什么是-CAS} ---------------------- **CAS** 全程 Compare-And-Swap,它的功能是判断内存中某个位置的值是否为预期值,如果是则更改为新值,这个过程是原子性的。 二、CAS 作用 {#二、CAS-作用} -------------------- **CAS** 是另一个无锁解决方案,更准确的是采用乐...

Thread 状态速查手册
经验分享

Thread 状态速查手册

厉飞雨 阅读(48) 评论(0) 赞(3)

前言 {#前言} -------- 梳理早期与 **Thread** 状态相关的笔记。 状态分类 {#状态分类} ------------ 通过查看 **Thread** 源码,我们可以看到在其类内部定义了线程的状态枚举: |------------------------------------------------------|------------------...

AQS 源码详解
经验分享

AQS 源码详解

厉飞雨 阅读(59) 评论(0) 赞(3)

一、前言 {#一、前言} ------------ **AQS** 是抽象的队列同步器,是用来构建锁或其他同步组件的重量级基础框架及整个 **JUC** 体系的基石。 二、相关组件 {#二、相关组件} ---------------- 下边的组件都是基于 **AQS** 框架扩展实现的: * **ReentrantLock**:可重入锁,避免多线程竞争资源的安全问题 *...

CSS3 之 flex 布局
经验分享

CSS3 之 flex 布局

厉飞雨 阅读(52) 评论(0) 赞(3)

一、前言 {#一、前言} ------------ flex 是 flexible Box 的缩写,意为**弹性布局**,用来为盒状模型提供最大的灵活性,任何一个容器都可以指定 flex 布局。 二、布局原理 {#二、布局原理} ---------------- 采用 flex 布局的元素成为 flex 容器。其所有子元素会自动成为容器成员,成为 flex 项目。 通过...

LockSupport 工具介绍
Java笔记

LockSupport 工具介绍

厉飞雨 阅读(92) 评论(0) 赞(3)

简单介绍 {#简单介绍} ------------ **LockSupport** 是用来创建锁和其他同步类的基本线程阻塞原语,是线程等待唤醒机制的一种实现工具类。 等待唤醒机制 {#等待唤醒机制} ---------------- **等待唤醒机制** 是线程中的一种协作机制。多线程之间不单有竞争锁的情况,还有相互协作的场景。比如线程A执行完某一操作需要挂起一段时间,将...

Ubuntu install and configuration PPTP service
软件使用

Ubuntu install and configuration PPTP service

厉飞雨 阅读(87) 评论(0) 赞(3)

**安装PPTP,以用来提供VPN服务** ``` sudo apt-get install pptpd ``` **配置pptp** ``` sudo vi /etc/pptpd.conf ``` 取消掉以下两行的注释: ``` localip 192.168.0.1 #客户端连接后的网关 remoteip 192.168.0.234-238 #客户端可用IP池 `...

OpenAI 研究员发现最好的 AI 也无法解决大部分编程问题
软件使用

OpenAI 研究员发现最好的 AI 也无法解决大部分编程问题

厉飞雨 阅读(105) 评论(0) 赞(3)

OpenAI 研究员发现即使是最先进的 AI 模型也无法解决大部分它们没见过的编程问题。研究报告发表在预印本平台 arXiv。研究人员利用了一个新开发的基准测试 SWE-Lancer,该测试是基于自由职业网站 Upwork 上的逾 1,400 道软件工程问题,测试针对了三个大模型:OpenAI 的 o1 推理模型和 GPT-4o,以及 Anthropic 的 Claude 3....

Ubuntu server 24.04 安装后可用空间只有分配的一半
linux

Ubuntu server 24.04 安装后可用空间只有分配的一半

厉飞雨 阅读(101) 评论(0) 赞(3)

使用 VMware 安装 Ubuntu server 24.04,注意到实际文件系统的总空间大小仅占设置的虚拟磁盘空间大小的一半左右。本文介绍了如何解决该问题。 解决步骤 {#%E8%A7%A3%E5%86%B3%E6%AD%A5%E9%AA%A4} -------------------------------------------- 1. 使用 df -h 命令显示文...