实验十多线程基础编程阿

实验十多线程基础编程阿

ID:9010487

大小:56.50 KB

页数:7页

时间:2018-04-14

实验十多线程基础编程阿_第1页
实验十多线程基础编程阿_第2页
实验十多线程基础编程阿_第3页
实验十多线程基础编程阿_第4页
实验十多线程基础编程阿_第5页
资源描述:

《实验十多线程基础编程阿》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、实验六多线程基础编程实验目的  通过继承线程类java.lang.Thread创建具有特定功能的线程类,通过实现接口java.lang.Runnable创建可作为线程运行的类,创建线程类对象,启动线程,并观察运行、停止。创建实现了Runnable接口的线程类对象以后,启动线程,通过观察运行和停止,掌握线程类java.lang.Thread常用方法的使用,掌握对线程执行过程中的异常的处理方法。实验要求编写一个实现接口java.lang.Runnable的简单多线程应用程序。实验内容1.使用java.lang.Thread创建具有特定功能的线程类;2.创建以java.la

2、ng.Runnable为接口的线程类;3.启动线程,并观察运行、停止。Exercise1#:Writeaprogramthatdisplaysthenameofthethreadthatexecutesmain.Exercise2#:•Creattwothreads,onethreadprint”A”andtheotherprint“B”alternately.E.g.ABBABAABBA….etc.Exercise3#:•随便选择两个城市作为预选旅游目标。实现两个独立的线程分别显示10次城市名,每次显示后休眠一段随机时间(1000毫秒以内),哪个城市先显示完毕,就决

3、定去哪个城市。分别用Runnable接口和Thread类实现。•publicclassTestlvyou•{•publicstaticvoidmain(Stringargs[])•{•Threadt1=newSubThread("北京");•Threadt2=newSubThread("海南");•t1.start();•t2.start();••}•}••classSubThreadextendsThread•{•publicSubThread(Strings)•{•super(s);•}•publicvoidrun()•{•for(inti=0;i<10;i++)

4、•{•System.out.print(getName());•try•{•sleep((int)(Math.random()*100));•}•catch(InterruptedExceptione)•{•e.printStackTrace();•}•System.out.println("去"+getName());•}•}•}实验七多线程并发编程实验目的掌握使用关键字synchronized同步方法、使用关键字synchronized同步语句块、和使用wait、notify(notifyAll)实现线程的通信,同时,练习使用join实现线程的协作。实验要求在实验

5、六的程序基础上,编写一个多线程并发的应用程序。实验内容1.创建多个线程;2.使用synchronized方法实现线程同步;3.运用wait、notify(notifyAll)实现线程的通信;4.使用join实现线程的协作;Exercise1#:Writeaprogramthatprintsouttheelapsedtimeeachsecondfromthestartofexecution,withanotherthreadthatprintsamessageeveryfifteenseconds.Havethemessage-printingthreadbenotif

6、iedbythetime-printingthreadaseachsecondpassesby.Addanotherthreadthatprintsadifferentmessageeverysevensecondswithoutmodifyingthetime-printingthread.Exercise2#:设计两个线程,一个充当电子表,每隔1秒在DOS窗口显示下一系统时间;另一个充当闹钟,每到整点就开始报时,即在DOS窗口显示5次整点提示,同时将第一个线程挂起,报时完毕再将第一个线程恢复运行。实验步骤(1)创建第一个类继承Thread类用来显示系统时间(1)第

7、一个类实现run()方法创建线程,线程体中每秒获取一次系统时间并显示。(2)创建第二个类继承Thread类用来实现闹钟功能(3)第二个类实现run()方法创建线程,线程体中循环判断当前时间是否为整点,若是则将第一个线程挂起,并每隔一秒输出提示,提示完毕恢复第一个线程的执行(4)创建第三个类,包含main()方法,作为程序的执行入口。importjava.util.Date;classSubThread1extendsThread{publicSubThread1(Strings){super(s);}publicvoidrun(){Datedate1

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。