Swift 并发编程 · 目录
🎒 30 章 · 从入门到实战
01
Swift并发编程概述
为什么需要并发?Swift并发模型演进(从GCD到async/await),课程目标与学习路径。
02
async/await基础
async函数定义、await调用、异步函数的执行流程、异步函数与同步函数的互调。
03
异步序列(AsyncSequence)
AsyncSequence协议、for-await-in循环、自定义异步序列。
04
任务(Task)基础
Task类型、创建异步任务、任务优先级、任务取消机制。
05
任务组(TaskGroup)
TaskGroup的概念、addTask方法、withTaskGroup、withThrowingTaskGroup。
06
非结构化并发
非结构化任务、Task.detached、与结构化任务的区别、使用场景。
07
Actor基础
Actor的概念、Actor隔离原则、Actor的属性和方法、Actor的重入问题。
08
Actor进阶
MainActor、GlobalActor、Actor的初始化、Sendable协议。
09
Sendable与@Sendable
Sendable协议详解、值类型与引用类型的Sendable、@Sendable闭包。
10
异步属性与下标
异步计算属性、异步下标、异步属性的使用场景。
11
异步序列与Combine
AsyncSequence与Combine的桥接、AsyncPublisher、使用场景对比。
12
任务本地值(TaskLocal)
TaskLocal的概念、绑定与读取、使用场景(如日志上下文)。
13
异步流(AsyncStream)
AsyncStream与AsyncThrowingStream、手动管理续流、与AsyncSequence的关系。
14
结构化并发深入
结构化并发的原则、任务树、子任务的生命周期管理。
15
任务取消与超时
取消检查(Task.checkCancellation)、isCancelled属性、withTimeout模式。
16
Actor死锁与重入
Actor重入的底层原理、避免死锁的策略、实际案例分析。
17
全局Actor与主线程
@MainActor的使用、自定义全局Actor、与UI更新的关系。
18
异步与错误处理
异步函数中的错误抛出、do-catch与try-await、错误传播。
19
异步与内存管理
闭包捕获列表、弱引用与无主引用、循环引用避免。
20
Swift并发与Objective-C互操作
桥接异步函数、与GCD的兼容、@objc与async。
21
Swift并发与Core Data
在Core Data中使用async/await、后台上下文操作、数据竞争避免。
22
Swift并发与网络请求
URLSession的异步API、自定义网络层、请求取消与重试。
23
Swift并发与UI更新
异步更新UI的最佳实践、@MainActor的妙用、避免界面卡顿。
24
Swift并发与测试
异步测试(XCTest)、等待异步结果、测试Actor隔离。
25
Swift并发性能优化
任务调度开销、Actor的锁竞争、性能分析工具。
26
Swift并发设计模式
生产者-消费者模式、Future/Promise模式、异步缓存。
27
Swift并发与SwiftUI
Task与View的生命周期、.task修饰符、@State与并发。
28
实战:异步下载管理器(一)
需求分析、架构设计、核心组件。
29
实战:异步下载管理器(二)
实现下载队列、进度跟踪、错误处理。
30
实战:异步下载管理器(三)
Actor隔离、UI集成、测试与优化。