A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黑马吕世成 中级黑马   /  2012-10-28 05:57  /  1707 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 黑马吕世成 于 2012-10-28 21:30 编辑

class TicketWindow implements Runnable//extends Thread
{
            int ticket = 10;
             public void run()
             {        
                 while(true)
                 {
                     if(ticket > 0)
                     {
                         //  try{Thread.sleep(10);}catch(Exception e){}
                     
                           System.out.println(Thread.currentThread().getName()+" window : is saling "+ticket--);  
                   }
                 }                                    
             }
}

class TicketsSale
{
            public static void main(String[] args)
            {
                    TicketWindow t = new TicketWindow();
                    
                    new Thread(t).start();
                    new Thread(t).start();
                    new Thread(t).start();
               
            }   



运行之后的结果见图片!为什么ticket--显示的顺序不是10 9 8 7、、、、这样倒序输出的???




360软件小助手截图20121028055057.jpg (55.15 KB, 下载次数: 27)

360软件小助手截图20121028055057.jpg

评分

参与人数 1技术分 +1 收起 理由
韩军博 + 1 神马都是浮云

查看全部评分

3 个回复

倒序浏览
lz你好,这个程序的打印结果是随机的,无序的,你把ticket的数值设置的较大一点,或者多运行几次就可以看出来了,另外,当以程序中有多个类的时候,主类最好使用public修饰。
回复 使用道具 举报
这个视频中提到过的,卖100张票,有时候不是按顺序,因为是多线程,很快,票已经卖出,但是还没来得及打印。就是这样
回复 使用道具 举报
本帖最后由 黑马吕世成 于 2012-10-28 21:30 编辑
徐升兴 发表于 2012-10-28 07:43
lz你好,这个程序的打印结果是随机的,无序的,你把ticket的数值设置的较大一点,或者多运行几次就可以看出 ...

嗯,暂且只能理解为打印的无序性。别的我也想不到了。不过还是谢谢亲们!O(∩_∩)O
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马