1. 一个 printf 引发的基础复习

    先看一下引发我追究一下 printf 和栈桢等相关知识的一段简单的程序:

    2024/01/19 CPlusPlus

  2. 设计模式学习之装饰者模式

    如下内容是学习《Head First 设计模式》第三部分《装饰者模式》所得,主要就是一些原文摘抄和少量自己的总结。

    2023/12/22 DesignPattern

  3. 设计模式学习之观察者模式

    如下内容是学习《Head First 设计模式》第二部分《观察者模式》所得,主要就是一些原文的摘抄和少量自己的总结。

    2023/12/03 DesignPattern

  4. 设计模式学习之策略模式

    如下内容是学习《Head First 设计模式》第一部分《设计模式入门》所得,主要就是一些原文的摘抄和少量自己的总结。

    2023/11/23 DesignPattern

  5. 简单的全排列算法实现

    问题描述

    2023/11/20 Algorithm

  6. 操作系统和数据库基础

    进程与线程的差别

    2023/11/06 Basis

  7. Mac 遇到问题集锦

    在桌面和 Finder 底部出现的神秘白条是怎么回事,如何消除?

    2023/10/25 Mac

  8. 一份简明的 Markdown 笔记与教程

    为部门内知识分享准备的素材,记录了 Markdown 的优点、应用场景和编辑工具,介绍了标准语法与扩展语法,以及一些应用 Markdown 的奇技淫巧。个人使用 Markdown 的经验持续补充中,最新完整版请参见

    2023/09/06 Markdown

  9. 解决 Groovy 引起的一次 OOM 告警

    线上收到告警,有个服务的一个 pod was OOM killed.

    2023/03/22 Java

  10. 代码审查:从 ArrayList 说线程安全

    更新: 此文发到 V2EX 后,有网友指出文中的案例代码改写为 List<String> result = paramList.parallelStream().map(this::doSomething).collect(toList()); 就能很好的解决,确实如此,当时代码审查时意识到这里有线程安全问题,然后我就有点思维定势,只想着用解决线程安全问题的方式去处理,没有换个角度想到这种更好的写法。以下仍然保留原文,阅读重点可以放「线程安全」的分析理解上,parallelStream 权当为了举例而简写的一种多线程写法。实际遇上它时可以优先用 parallelStream.map().collect() 和 parallelStream.flatMap().collect() 这类方案。

    2023/03/13 Java