4,156
社区成员




简易预习流程:先看预习课件,认真完成里面的习题。然后根据需要观看视频。最后尝试以回帖的形式完成课前问题列表。
预习课件(两份):
实验链接:https://www.cnblogs.com/zhrb/p/6762488.html
PTA题集:多线程。
提前完成PTA题集中6-1至6-4中至少两题,可联系老师加分。
本周作业主要以完成实验内容为主。请尝试完成"PTA题集:多线程"中的程序填空题与函数题6-1至6-6
代码详见群文件。
说明 | 代码 |
---|---|
继承自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 |