首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
多线程
订阅
谷畸亭
更多收藏集
微信扫码分享
微信
新浪微博
QQ
10篇文章 · 0订阅
iOS中为什么会有这么多锁呢?
其实iOS领域很多文章都谈到了关于锁的文章,但是我为什么要在这里重新写一篇文章呢?一是很多文章使用的观点依然是很老的观点,和我的测试结果不符合,二则是自己对这方面也比较生疏,所以就在最近重新梳理一下
优先级反转那些事儿
文章主要阐述了优先级反转的一些概念和解决思路,并结合iOS平台的几种锁进行了详细的调研。通过深入的理解,可以去规避一些不必要的优先级反转,从而进一步避免卡死异常。
iOS Synchronized 底层分析
synchronized是objc中提供的同步锁,支持递归。但是在swift中删除了,可以使用objc_sync替代。 想要弄清楚这些问题,还得弄清楚synchronized的底层实现,接下来我们来分析具体的实现。 首先通过汇编来分析下synchronized都做了什么,先写一…
阿里的iOS协程库 coobjc 源码解析(综述)——协程是什么?
本系列是笔者解析阿里的开源协程库 coobjc 的开篇之作,主要聊一聊协程是什么以及如何在iOS的开发过程中为我们带来帮助。 本篇还不会涉及到 coobjc 的代码细节解读,详见后续哈~
iOS底层 - 关于死锁,你了解多少?
我们永远不应该将函数添加到队列中执行任务时使用同步的方式,这对于保证死锁的串行队列尤其重要,但对于并发队列也应避免。的确,这是避免死锁的重要思路,但是,在实际开发中,我们使用了下面的代码。
iOS探索 多线程面试题分析
... 多读单写功能指的是:可以多个读者同时读取数据,而在读的时候,不能写入数据;在写的过程中不能有其他写者去写。即读者之间是并发的,写者与其他写者、读者之间是互斥的 多线程在日常开发中占有不少份量,同时面试中也是必问模块。但只有基础知识是一成不变的,综合运用题稍有改动就是另外…
iOS 多线程(线程的生命周期)
进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织形式的描述,进…
iOS多线程安全-13种线程锁🔒
多个线程访问同一块资源的时候,很容易引发数据混乱问题。 正常情况下我有50张票,然后卖了50次,剩余票数应该是0,但是打印结果竟然是3,所以这里就存在了线程安全问题。 出现线程安全的原因就是在同一个时间,多个线程同时读取一个值,像线程A和B同时读取了当前票数为10,等于是卖了两…
iOS概念攻坚之路(五):线程同步方案
多线程编程所处的环境是一个复杂的环境,线程之间穿插执行,需要使用一定的手段来保证程序的正确运行,这个手段就是同步。这篇文章分了两个部分,第一部分会先介绍同步的概念,第二部分是 iOS 中能使用到的同步方案的一个分析以及具体如何使用。 线程之间的关系是合作关系,既然是合作,那就得…
iOS底层探索 - 线程私有数据
多个函数共享数据时,除了通过函数间的返回值传递,还可以使用全局变量。在多线程的环境下,全局变量会被各个线程共享,如果我们需要只在单个线程所执行的函数间共享数据,例如要记录每个线程所执行过的函数名称,该如何做呢? 可以通过创建 线程私有数据(TSD: thread specifi…