并发执行特性:失去封闭性,多任务共享的软件技术探讨

需积分: 14 6 下载量 10 浏览量 更新于2024-07-11 收藏 8.49MB PPT 举报
"本篇课件主要探讨了程序并发执行的特征及其在软件技术基础学习中的重要性。首先,失去的是程序的封闭性和可再现性,因为并发执行允许多个任务同时使用同一程序,每个任务可能以不同的顺序访问共享资源,如变量n。例如,给出的代码片段展示了两个程序段p1和p2同时运行,它们都对共享变量n进行操作,这可能导致输出结果的不确定性,因为结果依赖于执行的调度顺序。 程序并发执行的一个关键特性是相互制约,即协同操作。在示例中,p1和p2的while循环可能需要依赖彼此的任务完成状态,如果它们没有同步处理,可能会出现竞态条件或死锁。这就需要程序员在设计并发程序时考虑线程安全和同步策略。 理解这些特征对于学习软件技术基础至关重要,因为它涵盖了数据结构与算法(如并发控制下的数据一致性)、操作系统原理(如进程管理)以及数据库系统(如何处理并发读写操作)。教材推荐使用英文原版书籍《数据结构与程序设计》、《操作系统概念》和《数据库系统概念》,配合中文教材《计算机软件技术导论》等,以便深入理解理论并结合实例学习。 课程目标是通过理论讲解和实例分析,使学生掌握软件技术的基本概念和原理,为后续深入学习和实际开发打下坚实基础。然而,强调指出,即使完成这门课程,学生不一定能立即具备独立开发软件的能力,因为编程和软件开发还需要实践经验的积累。 学习程序并发执行特征有助于培养学生的并发编程思维和解决并发问题的能力,这是现代软件技术中不可或缺的核心技能。"