-2

我想知道为了让程序在启动时创建一个循环,代码会是什么样子。然后,这个循环创建了几个线程对象,它们都在它们自己的线程上,因此它们都同时运行,并且它们都运行相同的代码。有没有办法做到这一点?例如,我们制作了 2 个线程,它们永远不会停止循环,一个总是打印“线程 1”,而 1 总是同时打印“线程 2”。这就是我想知道的。提前致谢!

4

1 回答 1

0
class MyTask implements Runnable {

    public static id = 0;

    public MyTask(){
        id++;    
    }

    public void run(){
        while(true){
            System.out.print("Thread " + id);
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
}

class Generator{
    Public static void main(String[] args){
        Runnable[] myTasks = new Runnable[2];
        myTasks[0] = new MyTask(); 
        myTasks[1] = new MyTask(); 

        for(Runnable r: myTasks){
            Thread t = new Thread(r);
            t.start();
        }
    }
}

我没有编译它。但这就是你要做的。当您运行生成器类时,将启动两个线程,它们将永远每隔一秒打印一次线程 1. 和线程 2。

于 2013-09-21T02:13:56.753 回答