LTT
简介
纸上得来终觉浅,绝知此事要躬行。
发布 254 篇文章
加入于 2026/02/04 17:28
使用 .gitattributes 修复 GitHub 仓库语言识别问题
最近在使用 Trellis 辅助开发项目时,我发现了一个挺有意思的问题:明明项目的主要业务代码不是 Python,但 GitHub 仓库列表里却显示这个仓库的主要语言是 Python。 一开始我还以为是 GitHub 识别错了,后来才发现,问题其实出在 GitHub 的语言统计规则上。 一、问题现象
- 2026/07/02 18:34
- 20
- 0
- 0
- 26.0℃
Android ForegroundService 前台服务详解
在 Android 开发中,Service 经常被理解成“后台任务组件”。但从 Android 8.0 开始,系统对后台执行做了越来越严格的限制,普通后台 Service 已经不再适合长期运行任务。 这时候,ForegroundService 就变得非常重要。 不过 ForegroundServic
- 2026/07/02 15:34
- 56
- 0
- 0
- 29.6℃
Android HandlerThread:一个带 Looper 的后台线程
HandlerThread 是 Android 提供的子线程管理工具,整合了 Thread、Looper 和 MessageQueue,支持通过 Handler 串行提交后台任务。其核心三点:一是创建后需按 create→start→getLooper→post 顺序操作,否则会导致消息循环不生效(如示例中直接 new HandlerThread 后获取 looper 失败);二是任务需在子线程执行,但 UI 更新必须通过 runOnUiThread 或主线程 Handler;三是停止时必须调用 quitSafely 让消息循环自然结束,避免内存泄漏。适用场景包括传感器数据处理、蓝牙指令队列等轻量级串行任务,但其线程仅在进程内存活,无法跨进程持续执行(如上传任务需 WorkManager,而拍照压缩队列适合)。对比 IntentService,HandlerThread 更灵活无需完整 Service,但也无自动回收机制,需主动管理生命周期。最佳实践是用 WorkerThread 封装单例工具,确保任务解耦且线程独立存在或销毁。
- 2026/07/02 15:07
- 19
- 0
- 0
- 25.9℃
Android JobIntentService:一个曾经用来兼容后台任务的过渡方案
在 Android 后台任务体系里,JobIntentService 是一个很有时代感的类。 它出现的背景是:以前我们经常用 IntentService 来处理后台任务,比如上传日志、同步数据、处理广播后的耗时操作。但从 Android 8.0 开始,系统加强了后台执行限制,普通后台 Service
- 2026/07/02 14:37
- 41
- 0
- 0
- 28.1℃
Android AlarmManager 系统级定时触发机制
一、AlarmManager 是什么? AlarmManager 是 Android 提供的一个系统服务,主要用于在未来某个时间点触发任务。 它不是普通的定时器,而是由系统统一管理的时间调度机制。App 设置一个闹钟任务后,即使 App 进程暂时不在前台,系统也可以在合适的时间触发对应操作。 常见使
- 2026/07/02 14:17
- 14
- 0
- 0
- 25.4℃
Android JobScheduler解析
一、JobScheduler 是什么 JobScheduler 是 Android 5.0,也就是 API 21 引入的系统任务调度机制。 它的作用不是让任务立即执行,而是让 App 把后台任务交给系统,由系统根据当前设备状态选择合适的时机执行,比如网络状态、电量状态、是否充电、是否空闲等。 官方文
- 2026/07/02 13:47
- 20
- 0
- 0
- 26.0℃
Hybrid 开发方案
下面是一篇可以直接作为技术方案初稿的 Hybrid 开发方案。 Hybrid 开发方案 一、方案背景 在移动端开发中,纯 Native 开发体验好、性能强,但开发成本高、发版周期长;纯 H5 开发迭代快、跨平台能力强,但性能、系统能力和用户体验相对弱。 Hybrid 开发是一种折中方案: 将核心体验
- 2026/07/02 13:21
- 43
- 0
- 1
- 30.3℃
Android IntentService 原理、实践与废弃
1. 概述 IntentService 是 Android 提供的一个抽象类,继承自 Service。它被设计用来按需处理异步请求(以 Intent 为载体)。它本质上是一个集成了“工作线程”和“消息队列”的后台服务,非常适合执行那些不需要与 UI 交互、且执行时间较短的耗时任务(如下载文件、写入日
- 2026/07/02 12:54
- 16
- 0
- 0
- 25.6℃
Spring Cloud 2025微服务技术选型推荐
【IT老齐842】Spring Cloud 2025微服务技术选型推荐_哔哩哔哩_bilibili
- 2026/07/01 15:00
- 30
- 0
- 0
- 27.0℃
接口幂等性:重复提交与重复下单的防坑指南
在分布式系统中,重复提交和重复下单的因果关系及防御策略要点如下:重复提交源于用户行为、网络重试等原因,导致重复下单。幂等性需分层防御——前端防抖减少冗余请求;Token机制(如Redis存储唯一Token)确保请求一致性;业务层用分布式锁(分片设计)或唯一标识(如用户ID+商品ID)管控并发;数据库唯一索引作为兜底防线,冲突时返回已有订单而非失败。常见陷阱包括:单方案失效(某电商因索引冲突导致锁竞争瘫痪)、业务状态未校验引发扣款、锁过期设置不合理造成并发问题,需采用2-3倍耗时设置或自动续期机制。分层防御体系(防重→Token→锁→唯一索引/消息去重)可降低重复率至0.002%,年省损失千万级。核心结论:幂等性需多层级组合方案,避免依赖单一机制,特别是高并发场景需同时使用Token和业务锁。数据库唯一索引可作为最终兜底,但更新操作需结合状态机校验当前状态。
- 2026/07/01 13:07
- 53
- 0
- 0
- 29.3℃