黑马程序员技术交流社区

标题: 线程问题 [打印本页]

作者: 唐泉银    时间: 2015-3-17 15:44
标题: 线程问题
class Ticket implements runnavble
{
         int ticket=100;
        public        void run()
        {
                whlie(ticket>0)
                 {
         System.out.println(Threat.currentThreat().getName()+"sale"+ticket);
         
                ticket--;
           }
        }
}
class TicketDemo
{
        public static void main(String[] args)
        {
                Ticket d=new Ticket();
                Threat t1=new Threat(d);
                Threat t2=new Threat(d);
                Threat t3=new Threat(d);
                Threat t4=new Threat(d);
                t1.start();
                t2.start();
                t3.start();
                t4.start();
        }
}这个程序哪里错了 为何不能运行?
作者: 殷俊    时间: 2015-3-17 15:46
本帖最后由 殷俊 于 2015-3-17 15:53 编辑

实现接口的Runnable写错了,线程Thread也写错了
作者: 唐泉银    时间: 2015-3-17 16:20
我发现了 拼写错误改了 还是不行
作者: 唐泉银    时间: 2015-3-17 16:23
殷俊 发表于 2015-3-17 15:46
实现接口的Runnable写错了,线程Thread也写错了

我发现了 拼写错误改了 还是不行
作者: 殷俊    时间: 2015-3-17 16:46
唐泉银 发表于 2015-3-17 16:23
我发现了 拼写错误改了 还是不行

你吧错误信息贴出来看看
作者: 胡谭龙    时间: 2015-3-17 17:17
贴出错误信息就知道了

作者: 唐泉银    时间: 2015-3-18 15:32
本帖最后由 唐泉银 于 2015-3-18 15:33 编辑

class Ticket implements Runnable
{
         public        void run()
        {
                int ticket=100;
                while(ticket>0)
                 {
         System.out.println(Thread.currentThread().getName()+"sale"+ticket);
         ticket--;
           }
        }
}
class TicketDemo
{
        public static void main(String[] args)
        {
                Ticket d=new Ticket();
                Thread t1=new Thread(d);
                Thread t2=new Thread(d);
                Thread t3=new Thread(d);
                Thread t4=new Thread(d);
                t1.start();
                t2.start();
                t3.start();
                t4.start();
        }
}

作者: 唐泉银    时间: 2015-3-18 15:37
殷俊 发表于 2015-3-17 15:46
实现接口的Runnable写错了,线程Thread也写错了

谢谢确实是拼写错误导致的
作者: 唐泉银    时间: 2015-3-18 15:41
胡谭龙 发表于 2015-3-17 17:17
贴出错误信息就知道了

谢谢 OK了
作者: 胡几手    时间: 2015-3-18 15:52
runnavble写错了。楼主细心啊。
作者: 女神从来不加班    时间: 2015-3-18 16:17
票数变量写外面吧 而且没有同步啊
作者: 田晓莉    时间: 2015-3-18 17:41
Int ticket = 100;写成全局的吧;另外就是上个锁,多线程有安全隐患啊,表示拼写错误自己也常犯,有时候一个分号搞的要改好久,细心一点就会好了
作者: huhanghao    时间: 2015-3-18 23:20
class Ticket implements Runnable
{
        int ticket=100;
        public void run()
        {
                while(ticket>0)
                {
                        System.out.println(Thread.currentThread().getName()+"sale"+ticket);
                        ticket--;
                }
        }
}
class TicketDemo
{
        public static void main(String[] args)
        {
                Ticket d=new Ticket();
                Thread t1=new Thread(d);
                Thread t2=new Thread(d);
                Thread t3=new Thread(d);
                Thread t4=new Thread(d);
                t1.start();
                t2.start();
                t3.start();
                t4.start();
        }
}

帮你改好了。不过建议去适用下高级记事本编程,楼主程序里面好多关键字都是错的。。。建议适用EditPlus适用下来感觉不错
作者: Jaybor    时间: 2015-3-18 23:49
拼写错了,同步最好加上,否则会一张票被多个窗口卖掉




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2