首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
后端
前端
Android
iOS
人工智能
开发工具
代码人生
阅读
APP原生与H5互调Bridge技术原理及基础使用
js端调用原生插件功能:调用命名为'11'的插件里的一个定时器api:jsCallTimer 带回调结果带参数的调用方式: 不带回调结果带参数的调用方式: 不带回调结果不带参数的调用方式:
Swift 6 严格并发检查:@Sendable 与 Actor 隔离的深度解析
摘要: Swift 6 引入了严格的并发检查机制,旨在消除数据竞争,提升多线程编程的安全性与可维护性。本文将深入探讨 @Sendable 协议的本质与应用场景,以及 Actor 隔离模型如何成为构建并
Flutter深度全解析
目录 第一部分:Flutter 底层原理与核心机制 第二部分:第三方常用库原理与八股文 第三部分:开发疑难杂症与解决方案 第四部分:性能优化八股文与深入细节 第五部分:全面横向纵向对比 第一部分:Fl
Swift中的分层缓存设计:平衡性能、内存与数据一致性的实践方案
引言:单一缓存策略的局限性 在移动应用开发中,缓存是提升性能的关键手段。然而,单一的缓存策略往往难以同时满足三个核心诉求:高性能、低内存占用和数据一致性。 内存缓存速度快但容量有限,磁盘缓存容量大但访
iOS自定义TabBar
DDTabBar 自定义 TabBar 技术文档 概述 DDTabBar 模块底部导航栏的自定义实现, 支持 普通样式 与 液态玻璃(Liquid Glass)样式 双形态切换。 支持暗黑模式和长辈模
如何在 iPhone 或 iPad 上删除文件
当存储空间不足时,从 iPhone 或 iPad 中删除文件是释放存储空间最简单的方法之一。然而,有时你可能会发现在 iPhone 或 iPad 上删除文件很困难。为了帮助你轻松删除文件,我们在本文中
AppLovin 危机升级:SDK 安全争议未平,建议移除为妙
背景 继 1 月做空机构 CapitalWatch 指控 AppLovin 深度涉入洗钱网络、关联东南亚 “杀猪盘” 后,这场资本风波的余震仍在持续。最新市场数据显示,截至 2026 年 2 月 5
RunLoop
以下是 Objective-C 中 RunLoop 的高频面试问题清单,涵盖基础概念、原理机制、线程关系、应用场景及实战排查,适用于中高级 iOS 开发岗位面试: 🔹 一、基础概念类 Q1:RunLo
4-30.【OC】【锁】在大型工程中,你会如何设计锁粒度与隔离策略?
在大型 iOS 工程中,设计锁粒度与隔离策略的目标是在数据安全性、执行性能与开发维护成本之间找到平衡。锁粒度过粗会导致主线程卡顿(如你提供的 slowlog_0 所示),锁粒度过细则会增加死锁风险。
4-29.【OC】【锁】主线程同步派发到主队列为什么必死锁?
这是一个非常经典且容易在面试中遇到的问题。在 iOS 开发中,执行 dispatch_sync(dispatch_get_main_queue(), ^{ ... }); 会产生立即且永久的死锁。 这
4-28.【OC】【锁】请画出“双锁反序”死锁的 wait-for graph。
“双锁反序”(AB-BA Deadlock)是多线程开发中最经典的死锁模型。当两个线程以相反的顺序请求两把相同的锁时,就会形成环路等待。 1. 场景描述 线程 1:已经持有 锁 A,正在尝试获取 锁
4-27.【OC】【锁】weak 引用表的同步机制是怎样设计的?
weak 引用表的同步机制是 Objective-C Runtime 中设计最精巧的部分之一,它必须在“高频访问”、“内存节省”和“多线程安全”之间取得平衡。 其核心设计可以概括为:多级哈希表结构 +
4-26.【OC】【锁】ARC 的 retain/release 路径中哪些地方涉及锁?
在 ARC(Automatic Reference Counting)环境下,retain 和 release 看起来只是简单的加减计数,但由于它们必须是线程安全的,其实内部逻辑非常复杂,涉及到多层级
4-25.【OC】【锁】atomic property 的实现是否真正线程安全?为什么?
在 Objective-C 中,atomic 属性的实现并不是绝对意义上的“线程安全”。 简单来说,atomic 只能保证属性的 Setter 和 Getter 操作本身是原子的(即读写完整),但无法
4-24.【OC】【锁】Objective-C runtime 内部有哪些关键锁?
Objective-C Runtime(libobjc)作为一个高度动态且线程安全的系统,其内部大量使用了不同类型的锁来保护全局表、方法缓存和类结构。 了解这些内部锁,能帮你理解为什么有些看起来简单的
4-23.【OC】【锁】os_unfair_lock 为什么是“不公平”的?
“不公平”(Unfair)在这里是一个计算机科学术语,主要指该锁不保证“先来后到”的排队顺序(First-In-First-Out, FIFO) 。 在传统的“公平锁”中,如果线程 A、B、C 依次尝
4-22.【OC】【锁】os_unfair_lock 如何避免优先级反转?
os_unfair_lock 是苹果在 iOS 10 中推出的 OSSpinLock 直接替代品。它能够规避优先级反转问题,核心在于它彻底改变了等待机制,并与内核调度器(Mach Kernel)进行了
4-21.【OC】【锁】priority inversion 在自旋锁中是如何产生的?
在自旋锁(Spinlock)中,优先级反转(Priority Inversion) 并非传统意义上的“多个线程竞争”,而是一种由于“忙等”机制导致的死锁状态。 其产生的核心逻辑如下: 1. 产生的前提
4-20.【OC】【锁】OSSpinLock 被废弃的真实原因是什么?
OSSpinLock 被废弃的真实原因在于它在 iOS 的线程调度机制下存在严重的 优先级反转(Priority Inversion) 风险,这会导致应用出现逻辑上的死锁或永久性卡顿。 虽然从代码逻辑
4-19.【OC】【锁】使用 semaphore 容易制造哪类隐蔽死锁?
在使用 dispatch_semaphore(信号量)时,最隐蔽且最常见的死锁类型是**“优先级反转导致的线程饥饿死锁”**,尤其是在 iOS 这种具有复杂优先级调度机制的系统中。 以下是该类死锁的详
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30