相关疑难解决方法(0)

Java:Thread.sleep()在内部,而循环不起作用

好吧,我是线程新手,所以我的问题可能相当愚蠢.但我要问的是,我有这个类,让我们说它的名字是MyClass.java.然后在其中一个方法中使用callThread(),我想打印出来,睡眠,并将控制权返回给MyClass.java的方法.我怎么做?

目前,我的代码是这样的:

class MyClass {
    void method()
    {
        MyThread thread = new MyThread();
        thread.run();
        // do some other stuff here...
    }
}
Run Code Online (Sandbox Code Playgroud)

然后,这将是MyThread:

class MyThread implements Runnable {
    public void run()
    {
        while (true)
        {
            System.out.println("hi");
            this.sleep(1000);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我希望MyThread会打印"hi",将控制权交给MyClass,然后在一秒钟之后再打印"hi".相反,MyThread会冻结我的整个程序,因此在那里使用它根本不起作用...

有没有办法解决?

java multithreading

2
推荐指数
1
解决办法
2万
查看次数

标签 统计

java ×1

multithreading ×1