首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
iOS进阶
订阅
Ch赟
更多收藏集
微信扫码分享
微信
新浪微博
QQ
44篇文章 · 0订阅
iOS底层原理之—dyld与objc的关联
在dyld加载过程中,我们知道会调用_objc_init方法,那么在_objc_init方法中究竟做了什么呢?我们来探究下。 该方法主要是读取运行时的环境变量,我们可以通过设置DYLD_PRINT_STATISTICS = YES来打印APP启动到main()函数之前的时长,进…
深入探索 iOS 内存优化
1945 年,冯·诺伊曼体系结构被提出,奠定了计算机的基础,同时其局限性也限制了计算机的进一步发展,直至现代,计算机体系还是没能逃离其局限性,只是陆续对其组织结构进行优化而已。 冯·诺伊曼体系结将计算机分为运算器、控制器、存储器、输入设备和输出设备五大部分,由于存储器的读写效率…
iOS-锁-@synchronized
@synchronized,同步锁,又名对象锁,由于其使用简单,基本上是在iOS开发中使用最频繁的锁。 通过符号断点我们可以将上述代码定位到objc源码。 @synchronized(nil)不会做任何事情,可以用来防止死递归。 我们再来看看当obj存在的时候,@synchro…
iOS底层 -- block原理
本篇文章主要分析block的类型,循环引用的解决,以及从clang和源码的角度解读block的底层原理。
iOS 底层原理|RunLoop 详解
一、RunLoop 简介RunLoop,顾名思义就是运行循环,实际上就是一个 do..while..,下面是简单描述 RunLoop 逻辑的伪代码:RunLoop 基本功能特点就是保持程序的持续运行;
DWARF文件初探——提取轻量符号表
前言不知道大家有没有用过bugly,bugly提供了一种从dSYM文件中抽取轻量符号表的功能,生成的符号表更加小巧,而且保留了地址和符号的映射关系,日志解析后仍然可以精确到行号。
源码解读RunLoop,理解以后面试必加分
继上一篇博客中高级iOS必备知识点之RunLoop(一)RunLoop的状态首先我们去RunLoop的源码去查看它有几种状态,如下图:它一共有上面的这几种个状态/* Run Loop Observer
iOS 底层原理|Block 详解
一、Block 简介Block 本质是一个封装了函数调用以及函数调用环境的 OC 对象,它主要由一个 isa 指针和一个 impl 函数指针和一个 descriptor 组成。 有点类似 C 里面的函
iOS - 老生常谈内存管理(五):Tagged Pointer
在objc4源码中,我们经常会在函数中看到Tagged Pointer。Tagged Pointer究竟是何方神圣?请开始阅读本文。 1. Tagged Pointer 是什么? 为了节省内存和提高执行效率,苹果在64bit程序中引入了Tagged Pointer技术,用于优化…
iOS 查漏补缺 - 线程
多线程是我们开发和面试中都会遇到的一个重要概念,相比于其他编程语言和平台,iOS 的多线程使用起来要比较友好和易用一些。但是对于多线程的基本概念,我们还是需要重视起来,这对于我们探索 pthread、NSThread、GCD 以及 RunLoop 都大有裨益。 要先了解什么是线…