Java创建多线程

来源:互联网 发布:知乎如何匿名评论 编辑:程序博客网 时间:2024/06/18 05:59
 Java创建多线程
到目前为止,我们仅用到两个线程:主线程和一个子线程。然而,你的程序可以创建所需的更多线程。例如,下面的程序创建了三个子线程:
/*@(#)NewThread.java   2017-4-17  * Copy Right 2017 Bank of Communications Co.Ltd. * All Copyright Reserved *//** * TODO Document NewThread * <p> * @version 1.0.0,2017-4-17 * @author Singit * @since 1.0.0 */public class NewThread implements Runnable{// Create multiple threads.String name; // name of threadThread t;NewThread(String threadname) {name = threadname;t = new Thread(this, name);System.out.println("New thread: " + t);t.start(); // Start the thread}// This is the entry point for thread.public void run() {try {for(int i = 5; i > 0; i--) {System.out.println(name + ": " + i);Thread.sleep(1000);}} catch (InterruptedException e) { System.out.println(name + "Interrupted"); } System.out.println(name + " exiting.");}}class MultiThreadDemo {public static void main(String args[]) {new NewThread("One"); // start threadsnew NewThread("Two");new NewThread("Three");try {// wait for other threads to end Thread.sleep(10000); } catch (InterruptedException e) { System.out.println("Main thread Interrupted"); } System.out.println("Main thread exiting.");}}
程序输出如下所示:
New thread: Thread[One,5,main]New thread: Thread[Two,5,main]New thread: Thread[Three,5,main]Three: 5One: 5Two: 5Three: 4Two: 4One: 4Three: 3One: 3Two: 3Three: 2Two: 2One: 2Three: 1One: 1Two: 1Three exiting.One exiting.Two exiting.Main thread exiting.

如你所见,一旦启动,所有三个子线程共享CPU。注意main()中对sleep(10000)的调用。这使主线程沉睡十秒确保它最后结束。
 
1 0
原创粉丝点击