Levon's Blog

微信: L6241425

1. Golang 的锁

1.1 锁的分类

  • sync.Mutex (互斥锁):一个“排他锁”。在任何时刻,最多只允许一个 goroutine(Go 语言中的轻量级线程)进入被它保护的代码区域。一旦一个 goroutine 持有该锁,其他任何试图获取该锁的 goroutine 都会被阻塞,直到锁被释放。
  • sync.RWMutex (读写互斥锁):一个“共享-排他锁”。它更加智能,对读和写操作进行了区分:
    • 读锁 (Read Lock):可以被多个 goroutine 同时持有。只要没有 goroutine 持有写锁,任意数量的 goroutine 都可以获得读锁。
    • 写锁 (Write Lock):是完全排他的。当一个 goroutine 持有写锁时,其他任何 goroutine(无论是想读还是想写)都必须等待。
阅读全文 »

1. 介绍

GPU(Graphics Processing Unit,图形处理器)是一种专门设计的微处理器,其核心特点是拥有数以千计的小型、高效的计算核心,能够同时执行海量的、重复的、简单的计算任务。它最初是为了加速图形渲染而生,但现在已广泛应用于科学计算、人工智能等领域。

CPU 是一个顶尖的数学教授,而 GPU 则是一个由几千名小学生组成的巨大班级。

  • 教授 (CPU): 你可以交给他任何复杂、需要按步骤推理的难题(比如一篇复杂的博士论文),他能以极快的速度独立完成。但如果你让他同时计算 1000 道 “1+1=?” 的算术题,他必须一道一道地算,速度再快也有限。
  • 小学生班级 (GPU): 你无法让他们写博士论文。但如果你把那 1000 道 “1+1=?” 的题分发下去,每个学生领一道,然后大喊一声 “ 开始!”,几乎在同一瞬间,你就能得到所有答案。

这个类比完美揭示了核心思想:CPU 擅长处理复杂、串行的任务,而 GPU 擅长处理海量、简单、并行的任务。

阅读全文 »

1. 原生 Markdown 及 Obsidian 增强技巧

1.1 链接

  • 内部链接 [[文件名]]:这是最基本的,链接到你的另一篇笔记。
  • 指定标题链接 [[文件名#标题]]:精准跳转到某篇笔记的特定章节,非常适合长文导航。
  • 指定块链接 [[文件名#^块ID]]:链接到笔记中的某一个段落、列表项或图片。在段落结尾输入 ^ 就会出现一个唯一的块 ID,点击即可复制。
  • 别名链接 [[文件名|你想要显示的名字]]:让链接在文章中读起来更自然。例如 [[2025-08-02|今天]]
  • 嵌入/引用 (Transclusion) ![[文件名]]:这简直是黑魔法!可以直接将另一篇笔记、某个标题下的内容,甚至是某个段落(块)直接 “ 嵌入 “ 到当前笔记中,实现内容复用。
    • 嵌入整个文件:![[另一篇笔记]]
    • 嵌入某个标题:![[另一篇笔记#某个标题]]
    • 嵌入某个块:![[另一篇笔记#^块ID]]
阅读全文 »

跨网络访问私有 IP,例如从家中访问公司内网资源,本质上是在公共互联网上构建一条安全、私密的通信链路。这使得物理上位于外部的设备,在网络逻辑上如同置身于内网之中,从而透明地访问内部服务器和数据库。

本文对比传统 VPN 与现代代理工具(如 Mihomo/Clash)的实现差异,并深入解析 TUN 模式的工作原理。

阅读全文 »

1. VPN 与代理工具

VPN 是正规安保公司的装甲车,代理工具是伪装成普通人的顶级特工。

VPN(虚拟专用网络):设备通过加密隧道连接到远端服务器,所有流量统一转发。类似驾驶外交装甲车——加密保护完善,但车辆本身特征明显。常见实现:WireGuard、OpenVPN。

代理工具(V2Ray/Trojan):流量伪装为普通网页访问,混入正常 HTTPS 流量中。类似便装特工——外观与普通快递员无异,难以被识别。常见实现:VLESS、Shadowsocks、Trojan。

阅读全文 »

1. 资源

1.1 模型

https://github.com/black-forest-labs/flux

https://huggingface.co/black-forest-labs/FLUX.1-Kontext-dev

  • Pro 和 Max 版本一如既往,是 Black forest Lab 相关模型的最顶尖的能力仅可以通过 API 来调用
  • Dev 版本是开源版本供社区学习和研究使用,目前已经开源。相关的代码和模型权重地址都可以在 官网 找到。

1.2 Prompt

promot 教程: https://docs.bfl.ai/guides/prompting_guide_kontext_i2i

prompt 优化: https://linux.do/t/topic/753477

google app: https://aistudio.google.com/apps?source=user

阅读全文 »

wget (全称: Web Get): 它的核心使命是下载文件。它是一个纯粹、专注且可靠的下载器,尤其擅长处理大文件和递归下载(比如整个网站)。wget 就像一个专业的网络快递员。你给他一个或多个收货地址(URL),他的任务就是把包裹(文件)完整无误地送到你指定的地点(本地硬盘),如果中途失败了还会自动重试。他很专注,只会送货。

curl (全称: Client for URLs): 它的核心使命是传输数据。它是一个功能极其强大的 “ 全能工具 “,可以让你通过 URL 与各种网络服务进行数据交互。下载只是它的众多功能之一,它还能上传、发送表单、测试 API 等。curl 就像一位全能的特工/侦察兵。他不仅可以取回情报(下载文件),还能向目标发送信息(POST 上传数据)、进行伪装(修改 User Agent)、检查目标的防御工事(查看 HTTP 头部信息),甚至还能使用各种秘密通道(支持 FTP, SCP, LDAP 等多种协议)。他 versatile(多才多艺),重在交互。

wget 主要支持 HTTP, HTTPS, FTP 。curl 支持的极其广泛 (HTTP/S, FTP/S, SCP, IMAP, POP3, SMB, LDAP…)

阅读全文 »

1. 基础知识

1.1 UTC (Coordinated Universal Time) - 协调世界时

  • 这是什么? UTC 是全世界的时间标准,是 “ 零号时区 “ 的基准。你可以把它想象成时间的 “ 世界普通话 “。它不受任何地区或夏令时的影响,永远稳定、中立。
  • 和 GMT 的区别? 很多人会混用 UTC 和 GMT(格林尼治标准时间)。在日常使用中,你可以认为它们是等价的。严格来说,GMT 是基于地球自转的天文时间,而 UTC 是基于原子钟的更精确的物理时间。在计算机领域,我们只用 UTC。
  • 关键点: 当我们讨论一个绝对、无歧义的时间点时,我们说的就是 UTC 时间。
阅读全文 »
0%