你如何让一个线程运行它的内容,暂停和重复?

时间:2012-03-23 15:48:53

标签: android multithreading loops repeat

我基本上已经完成了这个,但是当我运行应用程序时,它会在冻结之前过快地运行线程太多次。 希望让我的线程运行一次,暂停然后再次启动线程。

我试过了:

                while (running.get()) {
        Thread threadstart = new Thread()
        {
        public void run(){

            try {

        Thread.sleep(integerTime);

然后

 threadstart.start(); 

最后。这是我的确切代码,只是取出了所有流程。

所有建议都表示赞赏。

1 个答案:

答案 0 :(得分:3)

你正在新线程中睡觉 - 所以你的while循环将继续以非常快的速度生成新线程,每个将会睡眠。

为什么不创建具有循环的一个线程?

Thread thread = new Thread(new Runnable() {
    @Override public void run() {
        while (running.get()) {
            try {
               Thread.sleep(integerTime);
               // Do work
            }
        }
    }
};
thread.start();