Java创建多线程

 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 thread
		Thread 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 threads
		new 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: 5
One: 5
Two: 5
Three: 4
Two: 4
One: 4
Three: 3
One: 3
Two: 3
Three: 2
Two: 2
One: 2
Three: 1
One: 1
Two: 1
Three exiting.
One exiting.
Two exiting.
Main thread exiting.

如你所见,一旦启动,所有三个子线程共享CPU。注意main()中对sleep(10000)的调用。这使主线程沉睡十秒确保它最后结束。
 
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值