猿java

猿java的博客

Go 语言的并发模型主要基于`协程(goroutine)`,与其他编程语言(比如 Java)的线程相比,Go 协程以其轻量、易用和高效的特点吸引了大量开发者。本文,我将将深入分析 goroutine的工作原理及其调度机制。
阅读全文 »

Spring Cloud 是微服务架构中经常使用的一个框架,它提供了一系列工具来帮助开发者构建和管理分布式系统,而服务注册中心又是微服务架构中一个关键组件。那么,Spring Cloud 支持哪些注册中心?这篇文章我们一起来聊一聊。
阅读全文 »

MyBatis 是一款优秀的持久层框架,它通过简化 JDBC操作和提供灵活的 SQL映射方式,使 Java 开发人员能够更高效地进行数据库操作。那么,MyBatis的执行原理是什么?这篇文章我们将深入地分析。
阅读全文 »

MyBatis 是一款优秀的持久层框架,它通过简化 JDBC操作和提供灵活的 SQL映射方式,使 Java 开发人员能够更高效地进行数据库操作。那么,MyBatis的执行原理是什么?这篇文章我们将深入地分析。
阅读全文 »

在 Java编程中,死锁是一种常见的多线程问题,它发生在两个或多个线程彼此等待对方持有的资源时,导致这些线程都无法继续执行。死锁问题的解决和避免是多线程编程中的一个重要课题。这篇文章,我们一起来探讨 Java中死锁的情况及避免方法的详细。
阅读全文 »

在作为Java程序员,我们都知道`Thread.sleep()`是用于线程睡眠,那么,`Thread.sleep(0)`是做什么用呢?这篇文章,我们就来聊一聊。
阅读全文 »

Rust 的所有权系统是编程语言设计中的一次重大创新,它在不依赖垃圾回收机制的情况下,通过编译时的静态检查来保证内存安全。这种机制不仅避免了许多常见的内存错误,如空指针、悬垂指针和数据竞争,还显著提高了程序的性能。在这篇文章中,我们将深入探讨 Rust 的所有权系统,了解它是如何保证内存安全的。
阅读全文 »

在并发编程中,ABA问题是一个常见的问题,尤其是在使用乐观锁或无锁算法时,虽然这个问题并不是 Java特有的,但在Java中,当使用与CAS(Compare-And-Swap,比较并交换)相关的操作时,ABA问题尤为突出。这篇文章,我们来详细的聊一聊什么是 ABA问题?如何解决?
阅读全文 »