并发编程通过组织多个可交错推进的任务,处理等待、资源共享及任务之间的协调。并发不保证任务在同一时刻并行执行。 执行与协调 线程、协程、异步任务等是不同的执行组织方式。具体调度及共享边界由语言、运行时和操作系统共同决定,不能把某个运行时的规则当作全部并发模型。 关键问题 共享状态需要明确所有权与同步关系,任务需要完成、取消和清理路径。数据竞争、死锁及无界排队是不同问题,应分别分析。 相关概念适合在这里组织;具体语言的 goroutine、channel、GIL 等机制则保留在对应语言或实现下。 参考资料 Go 官方:并发不是并行 Python 协程与任务