第12周 预习、实验与作业:Java并发编程

news/2025/11/18 9:48:17/文章来源:https://www.cnblogs.com/zhrb/p/19235961

第12周 预习、实验与作业:Java并发编程

目录
  • 第12周 预习、实验与作业:Java并发编程
    • 1. 预习
      • 1.1 学习目标
      • 1.2 预习任务
      • 1.3 课前问题列表
    • 2.实验
    • 3.课后任务(作业)
      • 3.1 PTA编程
      • 3.2 在线学习平台
      • 3.3 课后
      • 3.4 本章参考代码索引
      • 拓展

1. 预习

简易预习流程:先完成预习课件。然后思考如下课前问题列表中的问题。注意:可根据需要观看线上课程视频。

1.1 学习目标

  1. 理解进程、线程、临界资源、同步访问等基本概念。掌握Thread、Runnable、syncrhonized的使用,理解线程的生命周期。
  2. 理解Java并发编程的线程互斥与线程同步问题。能编写基本的互斥与同步代码。
  3. 了解线程池和Java并发编程的一些辅助工具类。

1.2 预习任务

预习课件(两份)。

1.3 课前问题列表

  1. 以前你编写的Java程序同时能做几件事情?有几个执行流程?main方法执行完,整个程序一定会退出吗?
  2. 早期的电脑一般是单核CPU,但那时我们就可以在编写程序的同时听歌,你觉得其CPU可以同时执行两个程序的指令吗?如果不能,为什么我们可以边写程序边听歌?
  3. 打开“资源监视器”观察你使用的QQ、浏览器或者WPS,一般有几个线程?思考一下,当你运行这些程序的时候,有哪些现象证明了这些程序使用了多个线程?
  4. 运行移动中的小球中的“Bounce”与"BounceThread"。当你多次点击Start时,两个程序运行起来有何不同?为什么?
  5. 思考:两个人只有一双筷子(用A、B分别表示这双筷子的两只),这两个人只有各自获A、B这两只筷子的候才能成功吃饭。可以想象,他们会产生冲突。尝试说明他们可能产生哪些冲突?怎么解决这些冲突?

2.实验

  1. 实验链接:https://www.cnblogs.com/zhrb/p/6762488.html
  2. PTA题集:多线程。
    • 提前完成PTA题集中6-1至6-4中至少两题,可联系老师加分。

3.课后任务(作业)

本周作业主要以完成实验内容为主。

3.1 PTA编程

PTA题集:多线程"中的程序填空题函数题6-1至6-6

3.2 在线学习平台

限时完成:章节测验8(文件与流)

3.3 课后

  1. 使用多线程改造你的面向对象大作业。比如,可以允许两个以上的人使用同一个账号操作同一个购物车进行添加、删除等操作,在这里临界资源是什么。类似:某些餐厅的微信扫码点餐允许多个人同时点菜。
  2. 课程设计初步选题
    • 本次面向对象综合程序设计实践可选择Python或者Java。选择Python的可联系Python课程老师获取题目。
    • 历年师兄师姐的作品Java课程设计(2023版)
    • 前期任务:可先进行预组队,然后尝试选题(建议可在AI的帮助下进行选题)。建议完成一些实用性较强、可以利用第三方库或者第三方平台API的任务。

3.4 本章参考代码索引

参考代码详见群文件。
并发编程基础参考代码:

说明 代码
继承自Thread实现多线程 FirstThread.java
main线程线程 HelloWorldMainThread.java
实现Runnable接口实现多线程 FirstRunnable.java
使用匿名类、Lambda表达式简化多线程编写 ThreadTest.java
任务与线程相分离 AddTask.java
演示sleep、yield与join方法 SleepYieldJoinTest.java
使用interrupt方法中断线程 InterruptTest
使用标志位中断线程 ThreadStopTest.java
守护线程 DaemonTest.java
未使用互斥导致线程冲突 UnSynchronizedThreadTest.java
使用syncrhonized修饰方法解决线程冲突问题 testSync/SynchronizedThreadTest.java

并发编程进阶参考代码:

项目 文件名
使用原子变量解决 testSync/SynchronizedThreadAtomicTest.java
synchronized语句块解决细粒度同步问题 testSync/SyncPairCounter.java
volatile关键字 testSync/VolatileTest.java
死锁演示 testSync/ChopStickDeadLock.java
生产消费者1-未解决 ProducerConsumerV1.java
生产消费者2-使用while与wait、notify解决同步问题 ProducerConsumerV2.java
Lock对象演示 testSync/SyncCounterWithLock.java
使用Lock解决死锁 testSync/ChopStickWithLock.java
使用Lock与Condition解决同步问题 testSync/ProducerConsumerWithLock.java
Executor与ExecutorService:使用执行器与线程池 ExecutorServiceTest.java
Callable:有返回值的任务 CallableTest.java
ForkJoinPool:分而治之 threadTest/FindInArrTask.java、FindMaxTask、ExecutorServiceTest.java中的testForkJoinPoolTest
CountDownLatch:同步辅助类 testSync/CountDownLatchTest.java
BlockingQueue:阻塞队列 testSync/ProducerConsumerBlockingQueue.java
Process与ProcessBuilder:控制进程 ProcessTest.java

拓展

询问AI:给我一个简单的Java使用执行器与线程池的示例。并说明和直接使用Thread相比,其优点如何?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/968628.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

好用的跨网文件安全交换系统推荐是什么?主要有哪些核心功能?

Ftrans Ferry跨网文件安全交换系统专为高效、安全的数据传输设计,凭借其完备的功能,成为现代企业优选的文件交换工具。该系统实现了全面的数据保护,如DLP技术及时发现敏感数据风险,确保信息不被泄露。此外,通过稳…

2025年靠谱的圆形电梯家用TOP实力厂家推荐榜

2025年靠谱的圆形电梯家用TOP实力厂家推荐榜行业背景与市场趋势随着中国城镇化进程的加快和居民生活水平的提升,家用电梯市场近年来呈现爆发式增长。据中国电梯行业协会最新数据显示,2024年中国家用电梯市场规模已达…

2025年皮带传送带输送机定做厂家权威推荐榜单:带式输送机设备/大倾角皮带输送机/输送机皮带输送机源头厂家精选

中国工业输送设备市场规模已突破600亿元,其中皮带传送带输送机作为核心物料搬运设备,年需求量增长率稳定在10%以上。 皮带传送带输送机凭借其输送距离长、运量大、连续输送等优势,已成为现代工业生产中不可或缺的关…

2025 年 11 月五金件厂家推荐排行榜,不锈钢五金件,家具五金件,精密五金件,汽车五金件,橱柜五金件公司推荐

2025年11月五金件厂家推荐排行榜:不锈钢、家具、精密、汽车、橱柜五金件企业深度解析行业背景与发展趋势五金件作为现代制造业的基础元件,其质量直接影响终端产品的性能与寿命。随着产业升级的深入推进,五金件行业正…

DevExpress WPF中文教程:Data Grid - Service(服务)示例

DevExpress WPF中文教程:Data Grid - Service(服务)示例DevExpress WPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress WPF能创建有着强大互动功能的XAML基础应用程序…

2025年眼部雾化SPA商家口碑推荐排行榜前十强

摘要 随着现代人用眼强度不断增加,眼部雾化SPA行业在2025年迎来了快速发展期。据统计,我国眼部健康服务市场规模已突破百亿元,年均增长率达23.5%。本文基于用户真实评价、服务质量、技术水平和行业口碑等多维度数据…

2025年眼部雾化SPA商家全方位推荐排行榜:口碑与专业度权威评测

摘要 随着现代人用眼强度不断增加,眼部健康问题日益突出,眼部雾化SPA行业在2025年迎来快速发展期。据统计,中国眼部护理市场规模已突破800亿元,年增长率保持在15%以上。本文基于用户体验数据、技术实力、服务品质等…

通信原理 位同步 码元同步 方法

通信原理 位同步 码元同步 方法1、

iptables基础防火墙配置

# 清空现有规则 iptables -F # 设置默认策略:进来的包都拒绝,出去的都允许 iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P OUTPUT ACCEPT # 本机访问本机全部允许 iptables -A INPUT -i lo -j AC…

win10系统如何去除此电脑首页的六个文件夹?删除此电脑的文件夹

转自:https://zhuanlan.zhihu.com/p/31126258 删除后效果 首先打开注册表(win+R打开运行对话框输入regedit回车或者通过小娜搜索regedit)启动注册表编辑器, 然后定位到:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Wi…

STM32F4由于RST引脚外接上拉电阻导致NVIC_SystemReset()函数软件复位失效

STM32F4由于RST引脚外接上拉电阻导致NVIC_SystemReset()函数软件复位失效

2025年比较好的系统阳光房厂家最新权威榜

2025年比较好的系统阳光房厂家最新权威实力榜行业背景与市场趋势随着人们生活品质的提升和对居住环境要求的不断提高,系统阳光房作为连接室内外空间的理想选择,近年来市场需求持续增长。据中国建筑金属结构协会最新数…

2025年评价高的桥门式起重机用户好评厂家

2025年评价高的桥门式起重机用户好评厂家排行行业背景与市场趋势随着全球贸易的持续增长和港口基础设施建设的加速推进,桥门式起重机作为港口装卸、物流仓储和工业制造领域的核心设备,市场需求呈现稳定上升态势。根据…

2025蜡粉/PE蜡粉/水性蜡粉/微粉蜡厂家推荐思洛尔新材料,专业专注,品质保障!

2025蜡粉/PE蜡粉/水性蜡粉/微粉蜡技术突破与行业趋势分析 一、当前蜡粉领域面临的技术挑战 在当今工业制造领域,蜡粉材料作为重要的功能性添加剂,其性能表现直接影响着终端产品的质量与市场竞争力。根据行业数据显示…

2025 年 11 月蜡粉厂家推荐排行榜,PE蜡粉,PP蜡粉,水性蜡粉,微粉蜡,PTFE微粉蜡,砂纹蜡,砂面粉,耐高温/球形/彩色专用涂料砂面粉公司推荐

2025年11月蜡粉厂家推荐排行榜:PE蜡粉、PP蜡粉、水性蜡粉、微粉蜡、PTFE微粉蜡、砂纹蜡、砂面粉、耐高温/球形/彩色专用涂料砂面粉公司推荐 在涂料、塑料和油墨等行业中,蜡粉作为一种关键添加剂,广泛应用于改善表面…

替代 FTP 的技术有哪些?信创时代下的文件传输革新之路

在信创产业加速推进与国产化替代浪潮的双重驱动下,我国“2+8+N”行业体系(党政 + 金融、电力等八大关键行业+其他领域)正全面重构IT基础设施。文件传输作为数据流转的核心环节,传统FTP协议因安全漏洞、适配不足等固…

linux 127.0.0.1

127.0.0.1 是一个 本地回环地址(Loopback Address),用于在本地机器上进行测试和调试。它在 Linux 中的含义如下:? 127.0.0.1 的作用用于本地测试,例如:curl 127.0.0.1 或 ping 127.0.0.1 用于本地服务测试,例如…

2025年石膏板厂家权威推荐榜单:阻燃板/硅酸钙板/碳晶板护墙板源头厂家精选

在建筑装饰材料领域,石膏板因其轻质、防火、隔声等特性,已成为室内隔墙与吊顶系统的核心材料。根据行业数据统计,中国石膏板年消费量超过35亿平方米,其中防火与防水功能型产品需求增速达12%。本文基于企业产能、产…

s7-1500有没有可能不支持snap7 只支持opc ua

s7-1500有没有可能不支持snap7 只支持opc ua正常情况下:所有 S7-1500 都支持 Snap7(S7 通讯 / PUT-GET)和 OPC UA。 但 可能出现“看起来只支持 OPC UA、不支持 Snap7” 的情况,这通常是 设置问题 而不是 CPU 不支…

使用指定的显卡运行模型

使用指定的显卡运行模型指定使用第0块显卡启动qianwen3-8b模型,运行如下命令:CUDA_VISIBLE_DEVICES=1 /usr/local/python310/bin/python3 /usr/local/python310/bin/vllm serve /data/llm/qianwen3/8b --max-model-l…