多线程同步
来源:互联网 发布:淘宝怎么破解图片保护 编辑:程序博客网 时间:2024/06/14 16:08
线程实体/** * 线程安全的demo * @author Administrator * */public class SyncThread implements Runnable{ private int ticket =100; private boolean flag =true; @Override public void run() { while(flag){ test3(); } } /** * 同步方法synchronize */ public synchronized void test2(){ if(ticket<=0){ flag=false; return; } try { Thread.sleep(500); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println(Thread.currentThread().getName()+"安全抢到了"+ticket--); } /** * 不同步 */ public void test1(){ if(ticket<=0){ flag=false; return; } try { Thread.sleep(500); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println(Thread.currentThread().getName()+"不安全抢到了"+ticket--); } /** * 同步代码块,里面只能放引用对象 */ public void test3(){ synchronized(this){ if(ticket<=0){ flag=false; return; } try { Thread.sleep(500); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println(Thread.currentThread().getName()+"同步块安全抢到了"+ticket--); } }}另外一个调用的实现类public class SyncThreadApp { public static void main(String[] args) { SyncThread st =new SyncThread();//真实角色 Thread t2 = new Thread(st,"黄牛乙"); Thread t1 = new Thread(st,"黄牛甲"); Thread t3 = new Thread(st,"工程师"); t1.start(); t2.start(); t3.start(); }}
0 0
- 多线程同步
- 多线程同步
- 多线程同步
- 多线程同步
- 多线程同步
- 多线程同步
- 多线程同步
- 多线程同步
- 同步多线程
- 多线程同步
- 多线程同步
- 多线程、同步
- 多线程同步
- 多线程同步
- 多线程同步
- 多线程同步
- 多线程同步
- 多线程同步
- cas添加验证码
- angular如何组织controller directive service
- Linux 常用快捷键
- 神、上帝和老天爷 (错位排列)
- Spring mvc + maven +mybatis+jpa 架构解析
- 多线程同步
- 0-实验环境搭建
- SSL中常用证书格式及其应用
- sun app get
- 关于导入geoserver 源码到Eclipse编译运行
- 判断但钱时间是还在今天
- NGINX+PHP(FASTCGI)好,还是NGINX+APACHE+PHP好?
- springMVC中itext生成PDF,根本上解决中文乱码以及不显示问题
- 怎么用js取消浏览器的表单提示