摘要:
一、单例 1.1 单例示例 static dispatch_once_t onceToken; dispatch_once(onceToken, ^{ <#code#> }); 1.2 如何使用 参考链接:https://juejin.cn/post/7103015785685057572#head 阅读全文
摘要:
一 死锁 1.1 死锁产生的原因 我们根据死锁的提示:__dispatch_wait_for_queue查找到GCD源码中死锁的源码: 我们查找其中关于_dq_state_drain_locked_by的函数调用: 由此,我们可以知道,当线程和队列相同时就会发生死锁。 1.2 死锁实例 //1 // 阅读全文
摘要:
一、进程和线程 1.1 什么是进程和线程 进程是指在系统中正在运行的一个应用程序,每个进程之间是独立的,每个进程均运行在其专用的且受保护的内存空间内 线程是进程的基本执行单元,一个进程的所有任务都在线程中执行,进程要想执行任务,必须得有线程,进程至少要有一条线程。程序启动会默认开启一条线程,这条线程 阅读全文