首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
iOS
订阅
用户7913220534054
更多收藏集
微信扫码分享
微信
新浪微博
QQ
21篇文章 · 0订阅
GCD(一) 队列、任务、串行、并发
对于操作系统来说,一个任务就是一个进程(Process),比如打开一个浏览器就是启动一个浏览器进程,打开一个记事本就启动了一个记事本进程,打开两个记事本就启动了两个记事本进程,打开一个Word就启动了一个Word进程。 有些进程还不止同时干一件事,比如Word,它可以同时进行打…
GCD(二) dispatch_barrier
通过上一篇文章GCD(一) 队列、任务、串行、并发的讲解,我们了解到,并发队列可以让你追加到队列的block并发执行,而不需要等待前面入队的block完成运行。但是这样又会引发一个问题,如果并发队列允许所有的block同时执行,那么他们为什么被称为队列(FIFO)呢,它不更像一…
字节跳动 iOS Heimdallr 卡死卡顿监控方案与优化之路
本文主要介绍Heimdallr对卡死、卡顿异常的监控原理,并结合长时间的业务沉淀发现的问题进行不断迭代和优化,逐步实现全面、稳定、可靠的历程。
RunLoop与事件响应
在上一篇《调试iOS用户交互事件响应流程》中,调试了 iOS 事件响应的完整过程,但是只涉及了事件在 UIKit 的视图层级之间的传递的应用层的实现细节,具体到事件在哪里生成,如何分发到 UIKit 层的底层流程则未有提及。本文尝试从 RunLoop 入手,探索事件响应的底层流…
深入理解 iOS 事件机制
这篇文章始于一个需求:我们在 SDK 提供的某个 View 的 Subview 中实现了单击双击等多个 Gesture Recognizer,而客户希望自己在这个 View 上的单击手势不会冲突,同时没有延迟。 借此机会,我们来重温下 iOS 的事件机制和手势冲突,重点介绍下 …
iOS RunLoop详解
Runloop 是和线程紧密相关的一个基础组件,是很多线程有关功能的幕后功臣。尽管在平常使用中几乎不太会直接用到,理解 Runloop 有利于我们更加深入地理解 iOS 的多线程模型。 本文从如下几个方面理解RunLoop的相关知识点。 可见,一个RunLoop对象,主要包含了…
UIView-CALayer渲染的触发时机
1. 测试触发时机 为了探究渲染的触发时机,我们自定义一个TestView并复写 drawRect: 方法。 我们在 drawRect: 方法中设置一个断点,然后运行我们的测试代码。 刚运行起来就会进入断点,我们在 lldb 中使用 bt 打印一下调用栈。 ~~从调用栈我们可以…
iOS 关于 navigationBar 的一些:毛玻璃、透明、动态缩放、动态隐藏
转自 霖溦 的博客 本文整理了一些关于 navigationBar 的非常规的但是较为实用的操作,包括利用毛玻璃、动态透明、动态 item 颜色、动态隐藏,以及头视图的动态缩放,并同时涉及了 statusBar 的动态设置(换色)。
iOS底层学习 - 深入RunLoop
一般来讲,一个线程一次只能执行一个任务,执行完成后线程就会退出。如果我们需要一个机制,让线程能随时处理事件但并不退出,这种模型通常被称作 Event Loop。 Event Loop 在很多系统和框架里都有实现,比如 Node.js 的事件处理,比如 Windows 程序的消息…
iOS探索 runtime面试题分析
里面虽然可以添加属性变量,但是这些properties并不会自动生成Ivar,也就是不会有 @synthesize的作用,dyld加载期间,这些分类会被加载并patch到相应的类中。这是一个动态过程,Ivar不能动态添加 然而程序还是无情的崩了... 其实在iOS中NSNumb…