黑马程序员技术交流社区

标题: 关于Java线程 [打印本页]

作者: 高浩    时间: 2013-1-14 15:02
标题: 关于Java线程
public static void main(String[] args)
{
          for (int i=0; x<99999;i++)
          {
                    Sysotem.out.println("haha");
          }
             Sysotem.out.println("main");
      Sysotem.out.println("main");

      Sysotem.out.println("main");

      Sysotem.out.println("main");

      Sysotem.out.println("main");



}

该如何让循环和主函数里面的打印操作同时进行呢
作者: 唐晓    时间: 2013-1-14 15:28
把你要打印的System.out.println("main")封装到一个方法里,然后让方法实现runnable接口,主函数里开启一个Thread就能让for循环里的打印和System.out.println("main")一起打印了。
作者: yong230    时间: 2013-1-14 18:42
使用线程休眠吧,在for循环里 加上这一句Thread.sleep(3*1000);//休眠3s 就可以了
作者: 黄锦成    时间: 2013-1-14 21:17
在你这里的代码,只有一个主线程,for循环也在主线程里,一个线程里的代码是按照从上到下的顺序执行的。在你这里的代码实现不了。你可以开启一个线程,与主线程同时运行
作者: 铿锵科技    时间: 2013-1-14 23:37
写一个类
class ThreadPrint implements Runnable {
        private String s;

        ThreadPrint(String s) {
                this.s = s;
        }

        public void run() {
                for (int i = 0; i < 10; i++)
                {
                        System.out.println(s);
                        try {
                                Thread.sleep(100);
                        } catch (InterruptedException e) {
                                // TODO Auto-generated catch block
                                e.printStackTrace();
                        }
                }
        }

}
然后在main中启动多线程
public static void main(String[] args) {
                /*Cus c = new Cus();
                Thread t1 = new Thread(c);
                Thread t2 = new Thread(c);
                // new Thread(c).start();
                t1.start();
                t2.start();*/
                new Thread(new ThreadPrint("haha")).start();
                new Thread(new ThreadPrint("heihei")).start();
                new Thread(new ThreadPrint("wawa")).start();
        }




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