Mkdir700's Note
Mkdir700's Note
Slow is Smooth, Smooth is Fast.
首页
标签
归档
友链
关于
首页
标签
归档
友链
关于
最新文章
在 zsh 里同时用上 Vim 和 Emacs 快捷键
很多开发者在终端里用 zsh 的时候,会习惯性地打开 bindkey -v,进入 vi 模式。这样做的好处很明显:命令行也能像 Vim 一样分成 普通模式和插入模式,用 h/j/k/l 移动光标,w/b 按词跳转,甚至可以 dd 删除一整行,yy/p 来复制粘贴——对于重度 Vim 用户来说非常顺手
VIM
103
0
0
2025-08-21
macOS 代码签名配置指南
本文介绍了在 macOS 上配置代码签名和公证的步骤,确保应用正常分发和运行。前置要求包括 Apple Developer 账户和开发者证书。具体步骤包括获取开发者证书和 App-Specific Password,配置 GitHub Secrets,验证配置,并解决常见问题。安全注意事项包括保护 Secrets 和证书管理。整个过程需要遵循严格的步骤,包括验证 Team ID、确认证书类型等。详细步骤及常见问题解决方法均在文章中有详细描述。
255
0
0
2025-06-20
如何对特定 Commit 中的指定文件进行 Revert
场景描述 在日常开发中,我们经常遇到这样的情况:一个 commit 包含了多个文件的修改,但我们只想回滚其中某个或某几个文件的更改,而保留其他文件的修改。这种精细化的版本控制操作在以下场景中特别有用: 热修复场景:紧急修复某个文件的问题,但不影响同一 commit 中的其他功能 功能拆分:将一个大的
#git
107
0
0
2025-05-26
Rust 项目中解决依赖重复编译问题:以 objc2 为例
在开发桌面剪贴板同步应用(UniClipboard)时,遇到了一个令人蛋疼的问题:即使只修改一些与 objc2 库完全无关 的代码,每次构建时 Rust 编译器仍然会重新编译 objc2 库,这严重影响了开发效率。 问题描述 该应用是一个基于 Tauri 的跨平台桌面应用,使用 Rust 作为后端。
Rust
237
0
1
2025-03-29
Rust 中优雅地实现类型转换:从自定义方法到通用 trait
在 Rust 开发中,我们经常需要在不同类型之间进行转换。最近在开发过程中,我遇到了一个优化类型转换代码的问题。 问题背景 我的项目中有一个从 Payload 和路径创建 ClipboardMetadata 的功能。最初是通过自定义静态方法实现: impl ClipboardMetadata {
Rust
182
0
0
2025-03-28
分布式事务的挑战:从 Saga 到 2PC,以及 SQLite 的局限性
在构建分布式系统时,数据一致性是核心挑战。本文探讨了分布式事务管理中的Saga和2PC模式,以及在使用SQLite等嵌入式数据库时的特殊挑战。Saga模式通过将大型事务分解为小型本地事务,并通过补偿机制来保证最终一致性,但面临数据可见性问题。相比之下,2PC提供强一致性,但复杂且增加性能开销。SQLite使用文件级锁定机制,不适合2PC。解决方案包括接受Saga模式的局限性、更换数据库系统或重新设计系统架构。选择解决方案时需要权衡业务需求和技术限制,以构建可靠的分布式系统。
分布式
102
0
0
2025-03-27
什么是 WebRTC 及简单实现
WebRTC 基础概念 WebRTC (Web Real-Time Communication) 是一项开源技术,允许网页浏览器和移动应用程序通过简单的 API 实现实时语音、视频通话和点对点数据传输,无需安装任何插件或第三方软件。 WebRTC 连接建立流程 WebRTC 连接建立过程涉及多个步骤
253
0
0
2025-03-24
什么是向量数据库
向量数据库是一种索引、存储和提供对结构化或非结构化数据及其向量嵌入的访问的数据库。像 Weaviate 这样的向量数据库允许根据数据的向量距离或向量相似性在大规模上进行高效的相似性搜索和检索。文章介绍了向量嵌入的概念,以及利用ANN算法实现高效向量搜索的方式。相比传统数据库,向量数据库更适用于存储非结构化数据,实现了高效的语义搜索,并支持向量索引及混合搜索功能。向量数据库在AI应用中扮演重要角色,为企业提供实时的准确相似性搜索,促进个性化和精准决策。
向量数据库
149
0
0
2025-03-19
React严格模式下事件监听器失效
在基于 Tauri 和 React 的 UniClipboard 应用中,事件监听器设置后却很快被取消,根源在于 React 的严格模式。严格模式下,组件会双重挂载和卸载,导致监听器状态异常。尝试使用 useRef 跟踪状态失败,最终采用全局监听器状态管理解决。此方案使监听器在严格模式下持续活跃,成功避免重复设置问题。总结强调了对 React 严格模式的了解、状态管理的重要性以及全局状态的合理使用,为正确管理事件监听器提供了指导。
React
137
0
0
2025-03-18
Rust 异步线程安全问题解析与修复
问题概述 在 Rust 异步编程中,一个常见的错误是在持有 Mutex 锁的情况下使用 .await,这会导致编译错误: future cannot be sent between threads safely the trait `std::marker::Send` is not impleme
Rust
267
0
0
2025-03-16
阅读更多