首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
项阿丑
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
0
文章 0
沸点 0
赞
0
返回
|
搜索文章
项阿丑
17天前
关注
13-10.【OC】【性能】在工程实践中,如何优化 OC / Swift 混编项目的性能?
在工程实践中,OC/Swift 混编项目的性能优化不仅关乎算法,更关乎桥接成本(Bridging Cost) 、编译效率以及二进制体积。 以下是针对混编项目的五大核心优化维...
0
评论
分享
项阿丑
17天前
关注
13-9.【OC】【性能】Swift 值类型与引用类型在性能上的取舍原则是什么?
在 Swift 开发中,值类型(Struct/Enum)与引用类型(Class)的选择不仅仅是语法习惯,更是一场关于 内存分配成本、线程安全 与 引用计数负担 的性能博弈。...
0
评论
分享
项阿丑
17天前
关注
13-8.【OC】【性能】Runtime 动态特性(消息转发 / Swizzle)对性能有何影响?
Runtime 的动态特性是 Objective-C 的灵魂,但从性能角度来看,它们本质上是用“预测性”换取“灵活性” 。无论是消息转发还是方法交换(Swizzle),都会...
0
评论
分享
项阿丑
17天前
关注
13-7.【OC】【性能】objc_msgSend 与直接函数调用性能差异如何量化?
要量化 objc_msgSend 与直接函数调用的性能差异,我们需要从时钟周期、指令流水线以及编译器优化这三个维度进行拆解。 在现代 Apple 芯片(如 M3/M4)上,...
0
评论
分享
项阿丑
17天前
关注
13-6.【OC】【性能】大量临时对象产生时,autoreleasepool 如何影响性能?
在 Objective-C 和带有 @objc 标记的 Swift 代码中,autoreleasepool 是平衡内存压力与处理性能的关键杠杆。当大量临时对象产生时,它对性...
0
评论
分享
项阿丑
17天前
关注
13-5.【OC】【性能】__strong / __weak / __unsafe_unretained 的性能差异是什么?
在 ARC 的内存管理体系中,这三种修饰符代表了三种截然不同的指令路径和运行时开销。 其性能差异的核心在于:为了保证安全性,系统究竟在后台做了多少次原子操作和哈希表查找。 ...
0
评论
分享
项阿丑
17天前
关注
13-4.【OC】【性能】ARC 插入 retain / release 会带来什么开销?
ARC(自动引用计数)虽然在代码层面免去了手动管理内存的痛苦,但在底层二进制层面,它并非免费。ARC 的开销主要体现在 CPU 指令执行、原子操作锁竞争、以及编译器优化抑制...
0
评论
分享
项阿丑
17天前
关注
13-3.【OC】【性能】在大量方法调用场景下,如何分析消息发送是否成为性能瓶颈?
在处理高频、大量的 Objective-C 方法调用时,单纯猜测 objc_msgSend 是瓶颈往往是不准确的。我们需要通过定量测量、缓存命中率分析以及汇编级追踪来确定瓶...
0
评论
分享
项阿丑
17天前
关注
13-2.【OC】【性能】objc_msgSend 的调用成本到底有多高?
关于 objc_msgSend 的调用成本,我们不能只看一个绝对的数值,而要从它的查找链路、汇编优化以及与静态派发的对比三个维度来看。 简单来说:在缓存命中的情况下,它的开...
0
评论
分享
项阿丑
17天前
关注
13-1.【OC】【性能】Objective-C 的性能瓶颈通常出现在什么地方?如何优化?
Objective-C 作为一门极度依赖 Runtime(运行时) 的动态语言,其性能瓶颈主要源于其“高度动态化”带来的开销。相比于 C++ 或 Swift 的静态派发,O...
0
评论
分享
项阿丑
17天前
关注
12-10.【OC】【Swift+OC 混编】Swift 与 OC 混编项目中最常见的坑有哪些?
在 Swift 与 Objective-C 的混编项目中,开发者最常遇到的“坑”往往隐藏在动态性、内存管理语义以及编译器自动翻译的细节中。 以下是整理出的混编项目五大高频陷...
0
评论
分享
项阿丑
17天前
关注
12-9.【OC】【Swift+OC 混编】OC 调用 Swift 方法时,是否存在 retain / release 异常?
这是一个非常敏锐的问题。简单来说:在正常桥接(@objc)的情况下,不会出现 retain/release 异常。 这是因为 Swift 编译器在生成 Thunk(存根函数...
0
评论
分享
项阿丑
17天前
关注
12-8.【OC】【Swift+OC 混编】Swift ABI 稳定后,对 OC 调用有什么影响?
Swift ABI(应用二进制接口)稳定是 Swift 发展史上的分水岭。虽然它主要解决了 Swift 库之间的兼容性问题,但对于 Objective-C 调用 Swift...
0
评论
分享
项阿丑
17天前
关注
12-7.【OC】【Swift+OC 混编】OC 能访问 Swift enum / struct 吗?
简单直接的回答是:不能直接访问,但可以通过“桥接”变通。 Objective-C 的底层架构(Runtime)是基于 C 语言指针和固定内存布局的,而 Swift 的 st...
0
评论
分享
项阿丑
17天前
关注
12-6.【OC】【Swift+OC 混编】Generated Header 是如何生成的?
在 Swift 与 Objective-C 的混编体系中,Generated Header(即著名的 ProjectName-Swift.h)并不是一个简单的文本拷贝,而是...
0
评论
分享
项阿丑
17天前
关注
12-5.【OC】【Swift+OC 混编】Swift protocol 标记 @objc 后,在 OC 端如何调用?
当你在 Swift Protocol 前加上 @objc 后,它在 Objective-C (OC) 端的使用体验几乎与原生的 NSProtocol 一致。由于编译器生成了...
0
评论
分享
项阿丑
17天前
关注
12-4.【OC】【Swift+OC 混编】Swift 方法被 @objc 标记后,编译器插入了哪些 Runtime 信息?
当你在 Swift 方法前加上 @objc 标记时,编译器(Swiftc)不再仅仅生成一段高效的二进制机器码,而是会在你的二进制文件中注入一套复杂的“元数据链”,以确保 O...
0
评论
分享
项阿丑
17天前
关注
12-3.【OC】【Swift+OC 混编】为什么 Swift 泛型在 Objective-C 中消失?
在 Objective-C 中,你可能会发现 Swift 的泛型类变成了“空壳”或者干脆消失了。这背后的根本原因在于 Swift 的“强类型特化”设计 与 Objectiv...
0
评论
分享
项阿丑
17天前
关注
12-2.【OC】【Swift+OC 混编】Swift 类型如何映射到 Objective-C?
Swift 类型映射到 Objective-C 的过程是由 Swift 编译器(Clang 与 Swift 编译器前端)通过生成的 -Swift.h 桥接头文件 自动完成的...
0
评论
分享
项阿丑
17天前
关注
12-1.【OC】【Swift+OC 混编】@objc 和 dynamic 有什么区别?
在 Swift 中,@objc 和 dynamic 都与 Objective-C 运行时(Runtime)有关,但它们的职责完全不同: @objc 负责“可见性”,而 dy...
0
评论
分享
下一页
个人成就
文章被点赞
41
文章被阅读
18,336
掘力值
792
关注了
5
关注者
25
收藏集
2
关注标签
0
加入于
2021-07-17