zoukankan      html  css  js  c++  java
  • 第九周课程总结&实验报告(七)

    线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。进程类实现了runnable接口但是操作线程的方法主要并不在runnable接口中而是在thread类之中。

     

    实验报告(七)
    实验任务详情:
    完成火车站售票程序的模拟。
    要求:
    (1)总票数1000张;
    (2)10个窗口同时开始卖票;
    (3)卖票过程延时1秒钟;
    (4)不能出现一票多卖或卖出负数号票的情况。

    源代码

      private int ticket=1000;
            
            public void run() {
                 while(true) {
                        synchronized(this){
            
                    if(ticket>=0) {
                        try {
                            Thread.sleep(1000);  
                        }catch(InterruptedException e) {
                            e.printStackTrace();
                            }
        System.out.println(Thread.currentThread().getName()+"卖出一张票,剩下票数:ticket="+ticket--);

                    }
                }
            }
        }
    }

    测试

    package 火车票;

    public class 票 {
    public static void main(String args[]) {
    my = new my();
    Thread d1 = new Thread(my, "窗口one");
    Thread d2 = new Thread(my, "窗口two");
    Thread d3 = new Thread(my, "窗口three");
    Thread d4 = new Thread(my, "窗口four");
    Thread d5 = new Thread(my, "窗口five");
    Thread d6 = new Thread(my, "窗口six");
    Therad d7 = new Thread(my, "窗口seven");
    Thread d8 = new Thread(my, "窗口eight");
    Thread d9 = new Thread(my, "窗口nine");
    Thread d0 = new Thread(my, "窗口ten");
    d1.setPriority(Thread.MIN_PRIORITY); // 最高级别优先级
    d2.setPriority(Thread.MAX_PRIORITY); // 中间级别优先级
    d3.setPriority(Thread.NORM_PRIORITY); // 最低级别优先级
    d1.start(); 
    d2.start(); 
    d3.start();
    d4.start();
    d5.start(); 
    d6.start(); 
    d7.start();
    d8.start();
    d9.start();
    d0.start();
    }

      }

    运行结果

  • 相关阅读:
    silverlight 会越来越好
    如何在C#里实现端口监视呢?
    我就这么活着
    无意间看到的两句话
    唉,心情
    有一种美丽的缘分,叫错过!
    HTML5之Canvas绘图——阴影效果呈现方法
    jQuery——动态给表格添加序号
    PHP代码——Curl实现网页代理proxy
    HTML5之Canvas绘图——Canvas画布调整之移动、缩放、旋转
  • 原文地址:https://www.cnblogs.com/zc00/p/11740915.html
Copyright © 2011-2022 走看看