欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    实验七、线程编程.doc

    • 资源ID:70344787       资源大小:49KB        全文页数:4页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    实验七、线程编程.doc

    实验指导书实验七、线程编程一、实验目的1 理解线程的基本概念2 掌握Java中线程创建的基本方法3 掌握控制线程基本方法4 掌握Java中线程的同步与互斥的实现二、实验内容1 验证课堂练习的结果,下面是课堂练习的内容:(1) 编写一个程序,能够根据用户的输入的数值生成相应数目的线程,每个线程运行1秒后结束。(2) 编写一个程序,能够生成n个线程,每个线程每隔1秒打印自己的序号,当用户输入m后第m个线程结束。(3) 编写一个程序,能够生成n个线程,每个线程打印自己的序号后结束,但要求最终的打印的结果为n,n1,1。2 将第三题改写为能够按照任意顺序结束。3 编写一个程序(由若干个类组成),该程序能够生成3个线程,其中2个线程向一个队列中写入数据,每次写入1个字节,1个线程从队列中读出数据,一次2个字节。要求读写交替运行,并注意数据的同步,而且队列要借助数组实现。三、实验步骤1 运行Eclipse,在其中新建一个Java工程JavaNetwork;2 创建package lab.lab2,并在其中创建一个Java类FirstThread并运行查看结果,其代码如下:package lab.lab2;import java.io.*;public class FirstThread extends Threadpublic static void main(String args) int n;try n=Integer.parseInt(new BufferedReader(new InputStreamReader(System.in).readLine();for (int i=0;i<n;i+)(new FirstThread().start(); catch (IOException e) e.printStackTrace();public void run()System.out.println("Thread started.");try Thread.sleep(1000); catch (InterruptedException e) e.printStackTrace();System.out.println("Thread ended.");3 在package lab.lab2中创建一个Java类SecondThread并运行查看结果,其代码如下:package lab.lab2;import java.io.*;public class SecondThread extends Threadprivate int id;private boolean flag=true;private static SecondThread t;private static int n=5;public SecondThread(int id)this.id=id;public void stopThread()flag=false;public boolean getThreadState()return flag;public static void main(String args) int m;t=new SecondThreadn;for (int i=0;i<n;i+)(ti=new SecondThread(i).start();while(testThreads()try m=Integer.parseInt(new BufferedReader(new InputStreamReader(System.in).readLine();tm.stopThread(); catch (IOException e) e.printStackTrace();System.out.println("program ended.");public void run()System.out.println("Thread "+id+" started.");while (flag)try Thread.sleep(1000); catch (InterruptedException e) e.printStackTrace();System.out.println("Thread "+id+" ended.");private static boolean testThreads()boolean flag=false;for (int i=0;i<n;i+)flag|=ti.getThreadState();return flag;4 在package lab.lab2中创建一个Java类ThirdRunnable并运行查看结果,其代码如下:package lab.lab2;public class ThirdRunnable implements Runnableprivate int id;private static int stopid=-1;static int n=10;public ThirdRunnable(int id)this.id=id;public static void main(String args) for (int i=1;i<=n;i+)new Thread(new ThirdRunnable(i).start();stopid=n;public void run()System.out.println("Thread "+id+" started.");while (id!=stopid)Thread.yield();System.out.println("Thread "+id+" ended.");stopid-;5 将ThirdRunnable类改写,使其能够按照任意顺序结束;6 实现实验内容中的第3题。(提示:该程序应该由四个类组成,一个控制类(main方法所在类),实现线程的创建与启动;两个线程类,分别实现读数据与写数据;一个环形队列类,用于数据的存取。另外还应注意将synchronized关键字和wait/notify机制结合起来运用。)四、课后练习1 编写一个多线程程序,该程序主要完成以下工作:(1)生成两个发送线程s1,s2和一个接收线程r;(2)接收线程r每接收到M个来自于s1的数据和N个s2的数据后将它们分别求平均值后输出;(3)这样的接收过程总共进行3次。2 编写一个多线程程序,模拟多个售票点联网出售火车票的场景,假设车票有10张,购票人有20人,售票点有3个,要求最终能够输出每张车票的票号、售出地点、乘客姓名。

    注意事项

    本文(实验七、线程编程.doc)为本站会员(asd****56)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开