多线程代码:Runnable方法

package com.hebust.java.third;
 
import java.util.Random;
 
public class SaleTicket implements Runnable {
 
public int total;
public int count;
 
public SaleTicket() {
total = 100;
count = 0;
}
 
public void run() {
while (total > 0) {
synchronized (this) {
if(total > 0) {
try {
//Thread.sleep(800);
Thread.sleep(new Random().nextInt(1000));
} catch (InterruptedException e) {
e.printStackTrace();
}
count++;
total--;
 
System.out.println(Thread.currentThread().getName() + "\t当前票号:" + count);
}
}
}
 
}
 
public static void main(String[] args) {
SaleTicket st = new SaleTicket();
for(int i=1; i<=5; i++) {
new Thread(st, "售票点" + i).start();
}
}
}

总结:这一节里了解了多线程的知识,用多线程解决火车卖票等实际问题。这是和贴近生活的问题。

当时做的不熟悉,所以要好好地学,在寒假掌握它!!加油!!

最新文章

  1. 乌版图 read-only file system
  2. [UIScreen mainScreen].bounds.size.width 和self.view.frame.size.width的区别
  3. 原生 js 写分页
  4. oracle创建用户、授予权限及删除用户
  5. 技术英文单词贴--G
  6. 使用NodeJS将XML解析成JSON及性能比较
  7. IIS7 配置URL_REWRITE
  8. 【转】JS函数的定义与调用方法
  9. appium +python api 新手
  10. 【转】java.lang.StackOverflowError
  11. thinkphp 分组、页面跳转与ajax
  12. XML解析【介绍、DOM、SAX详细说明、jaxp、dom4j、XPATH】
  13. How to set up Dynamics CRM 2011 development environment
  14. 复制ASP.NET的ASHX、aspx文件的注意事项
  15. vue使用qrcode插件生成二维码
  16. MegaCli命令使用详解
  17. python 文件写入错误
  18. App Store 审核指南
  19. 新建react项目
  20. JS学习笔记9_JSON

热门文章

  1. Jenkins的job执行arquilian test时总是报JBoss启动失败错误
  2. Effective Java 第二版 Enum
  3. 绕过安全狗等一些WAF收集
  4. 迷宫问题求解——C++
  5. AngularJs学习笔记--IE Compatibility 兼容老版本IE
  6. functions and closures are reference types-函数和闭包是引用类型
  7. DataGrid添加滚动条
  8. php编程零基础如何快速入门。门头沟编程
  9. java中强引用、软引用、弱引用、幻象引用有什么区别?分别使用在什么场景?
  10. ubuntu上建立本地git 和 网络 github的上传与下载