Mkdir700's Note
Mkdir700's Note
Slow is Smooth, Smooth is Fast.
首页
标签
归档
友链
关于
首页
标签
归档
友链
关于
Tec
wiki
Tec
Python
2
算法题
8
数据库
3
爬虫
9
随笔
Web3
未定义
SQLite 锁机制:读锁策略与并发事务分析
在使用 SQLite 数据库时,经常会遇到并发事务问题。SQLite 的锁机制中,读操作获取锁的策略会根据上下文变化,包括事务外和事务内的不同情况。不同隔离级别也影响读操作的锁获取方式。通过一个实验验证了在并发事务中,事务 A 能执行更新操作但在提交时失败,事务 B 可以持续保持共享锁。SQLite 的锁升级是延迟的,写操作的内存更改和实际文件写入是分离的,而事务提交阶段是关键的锁竞争点。这种设计确保了数据一致性和较好的并发性能。
Tec
数据库
SQLite
数据库锁
246
0
3
2024-12-26
使用 GoReleaser 发布 Rust 二进制文件
消费者获取二进制发布的几种方式包括操作系统原生包格式、语言原生包格式、curl shell 组合以及现代二进制打包工具。打包和发布过程需要跨平台编译、打包、摘要验证、上传和设置分发工件。GoReleaser 在构建和分发方面表现出色,支持 Go 项目,但不能构建其他类型的项目。通过破解GoReleaser构建过程,添加dummy.go文件并运行必要的Rust构建来实现。GoDownloader是GoReleaser的姊妹项目,可生成curl-shell组合来安装二进制文件。探索其他Rust发布工具如cargo-release、cargo-deliver和cargo-hublish。建议使用docker-rustup在OSX上进行Rust跨平台构建。
Tec
161
0
0
2024-10-10
解决在 Windows 上 openssl-sys 构建失败的问题
在 Windows 上构建 Rust 时,遇到 `openssl-sys` 错误提示缺少 OpenSSL。解决方法包括使用 `choco` 安装 OpenSSL,并设置环境变量 `OPENSSL_DIR` 和 `OPENSSL_LIB_DIR`。安装完成后重启 VSCode 即可解决问题。相关链接提供了更多帮助。
Tec
Rust
942
0
0
2024-09-16
解决 Rust 测试中的并行执行冲突:保护共享资源的策略
在 Rust 开发中,测试是确保代码质量的关键环节。然而,并行执行测试可能导致共享资源冲突。解决方案包括使用 serial_test crate 串行执行测试、使用互斥锁控制资源访问、创建独立的测试环境隔离影响、利用测试模块和一次性初始化共享初始化逻辑、以及使用 #[ignore] 属性标记易受影响测试。选择合适策略取决于项目需求,但需注意并行测试可能带来的问题,确保测试的可靠性和一致性。
Tec
Rust
113
0
0
2024-09-13
Rust 中的跨平台开发:处理平台特定代码和未使用代码警告
在 Rust 中进行跨平台开发时,使用条件编译可以实现平台特定代码,保持接口一致性。然而,静态分析工具可能误报特定代码为"未使用",可通过 `#[allow(dead_code)]` 属性、测试用例和条件编译标记方法的可见性等策略解决。另外,使用特性 (feature) 标志和条件编译属性抑制特定平台的未使用代码警告也是有效方法。这些策略确保代码跨平台兼容性,清晰表达意图,解决静态分析工具警告问题。
Tec
124
0
0
2024-09-13
JS基础|let与var有什么区别?
在 JavaScript 中,`var` 和 `let` 用于声明变量,主要区别在于作用域和提升方面。`var` 是函数作用域或全局作用域,而 `let` 是块作用域。变量提升时,`var` 会被提升到函数或全局作用域顶部,而 `let` 被提升到块顶部。重复声明时,`var` 允许,`let` 不允许。全局变量属性方面,`var` 会成为全局对象属性,`let` 不会。因此,`let` 提供更严格的作用域控制和更安全的变量声明,更适合现代 JavaScript 开发。
Tec
前端
JS
基础
126
0
0
2024-07-12
使用 http-server 调试油猴脚本
在学习前端知识中碰到需求使用油猴脚本定制化网页,通过使用 HTTP 服务器可以高效地开发和调试油猴脚本。安装并启动 http-server,更新油猴脚本使用 HTTP URL 进行调试,避免文件权限问题,适用于任意操作系统。在浏览器控制台检查错误信息以确保调试效果。
Tec
前端
油猴脚本
130
0
0
2024-07-12
Python 泛型 - 如何在实例方法中获取泛型参数T的类型?
本文介绍了在Python中如何在实例方法中获取泛型参数T的类型,首先通过使用typing库中的get_args和get_origin函数来实现。get_args用于获取类的泛型参数,get_origin用于获取类型的原始类。文章还控制了Generic类的源码,展示了必须在__init__、__new__之后才能使用的原因。最后,讨论了GenericAlias类和其__call__方法的实现,解释了如何在实例方法内部获取原始类。文章关键词:Python, Python技巧。
Python
Tec
Python
Python技巧
1207
0
1
2023-02-23
1143. 最长公共子序列
算法题
Tec
动态规划
575
0
0
2022-10-03
1508. 子数组和排序后的区间和
算法题
Tec
前缀和
矩阵
二分查找
620
0
2
2022-09-11
下一页