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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

我真的有点搞不明白这个sleep的具体用途,你们能给我一个好的例子看看吗?

8 个回复

倒序浏览
就是这个线程有点累了,让她先休息一会
回复 使用道具 举报
001可望成功 发表于 2014-6-28 17:15
就是这个线程有点累了,让她先休息一会

你们就加油回答下好吗?我拿个技术分不容易啊
回复 使用道具 举报
sleep举个例子,让这个程序睡几毫秒后然后再激活,感觉和用360抢票软件一样,做个循环,刷完这次先睡几秒,然后再刷。不然服务器直接让你刷爆了
回复 使用道具 举报
e644638045 发表于 2014-6-28 17:40
你们就加油回答下好吗?我拿个技术分不容易啊

不用太担心,技术分还是好挣的,好好回答,好好提问就行
回复 使用道具 举报
cat73 黑马帝 2014-6-28 20:26:56
地板
sleep命令可以让线程暂时放弃执行权,在一定时间内不执行该线程.直至被其他线程唤醒或者到时间

评分

参与人数 1技术分 +1 收起 理由
李小然 + 1

查看全部评分

回复 使用道具 举报
sleep命令可以让线程暂时放弃执行权,在一定时间内不执行该线程.直至被其他线程唤醒或者到时间 +1
回复 使用道具 举报
本帖最后由 天,殇心 于 2014-6-28 21:52 编辑


/*
思路:
1.创建一个对象实现Runnable接口
2.重写run()方法
3.创建类的实例
4.把类的实例作为Thread的构造参数传递,创建Thread对象
*/
public class RunnableDemo {
        public static void main(String[] args) {
                //创建类的实例
                RunnableTest rt=new RunnableTest();
                //把类的实例作为Thread的构造参数传递,创建Thread对象
                Thread t1=new Thread(rt);
                Thread t2=new Thread(rt);
                Thread t3=new Thread(rt);
                Thread t4=new Thread(rt);
               
                //添加窗口名
                t1.setName("窗口一");
                t2.setName("窗口二");
                t3.setName("窗口三");
                t4.setName("窗口四");
               
                //启动线程
                t1.start();
                t2.start();
                t3.start();
                t4.start();
        }
}



回复 使用道具 举报


public class RunnableTest implements Runnable {
       
        // 定义票数
        private int i = 100;
        private Object obj = new Object();

        // 重写run方法
        @Override
        public void run() {
                //线程不安全,会出现相同的或者负数
                //要加同步synchronized
                synchronized (obj) {
                        while (true) {
                                if (i > 0) {
                                        try {
                                                //在指定的毫秒数内让当前正在执行的线程休眠
                                                Thread.sleep(50);
                                        } catch (InterruptedException e) {
                                                // TODO Auto-generated catch block
                                                e.printStackTrace();
                                        }
                                        System.out.println(Thread.currentThread().getName() + "\t"
                                                        + "在卖" + (i--) + "张票");
                                }
                        }
                }
        }

}






回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马