码迷,mamicode.com
首页 > 系统相关 > 详细

初步使用Thread类创建进程

时间:2015-10-12 21:07:38      阅读:300      评论:0      收藏:0      [点我收藏+]

标签:

如何创建一个线程呢?

创建线程方式一:继承Thread类。

步骤:   1,定义一个类继承Thread类。

    2,覆盖Thread类中的run方法。

    3,直接创建Thread的子类对象创建线程。

    4,调用start方法开启线程并调用线程的任务run方法执行。

 

可以通过Thread的getName获取线程的名称 Thread-编号(从0开始)

主线程的名字就是main。

class Demo extends Thread
{
	private String name;
	Demo(String name)
	{
		super(name);
		//this.name = name;
	}
	public void run()
	{
		for(int x=0; x<10; x++)
		{
			//for(int y=-9999999; y<999999999; y++){}
			System.out.println(name+"....x="+x+".....name="+Thread.currentThread().getName());
		}
	}
}




class ThreadDemo2 
{
	public static void main(String[] args) 
	{

		/*
		创建线程的目的是为了开启一条执行路径,去运行指定的代码和其他代码实现同时运行。
		
		而运行的指定代码就是这个执行路径的任务。

		jvm创建的主线程的任务都定义在了主函数中。

		而自定义的线程它的任务在哪儿呢?
		Thread类用于描述线程,线程是需要任务的。所以Thread类也对任务的描述。
		这个任务就通过Thread类中的run方法来体现。也就是说,run方法就是封装自定义线程运行任务的函数。
		
		run方法中定义就是线程要运行的任务代码。

		开启线程是为了运行指定代码,所以只有继承Thread类,并复写run方法。
		将运行的代码定义在run方法中即可。 


		*/
//
//		Thread t1 = new Thread();

		Demo d1 = new Demo("旺财");
		Demo d2 = new Demo("xiaoqiang");
		d1.start();//开启线程,调用run方法。
		
		d2.start();
		System.out.println("over...."+Thread.currentThread().getName());
	}
}

 调用run和调用start有什么区别?

 1 class Demo extends Thread
 2 {
 3     private String name;
 4     Demo(String name)
 5     {
 6 //        super(name);
 7         this.name = name;
 8     }
 9     public void run()
10     {
11         int[] arr = new int[3];
12         System.out.println(arr[3]);
13         for(int x=0; x<10; x++)
14         {
15             System.out.println("....x="+x+".....name="+Thread.currentThread().getName());
16         }
17     }
18 }
19 
20 
21 
22 
23 class ThreadDemo3 
24 {
25     public static void main(String[] args) 
26     {
27         Demo d1 = new Demo("旺财");
28         Demo d2 = new Demo("xiaoqiang");
29         d1.start();
30         
31         d2.start();
32 
33         System.out.println(4/0);//throw new ArithmeticException();
34 
35         for(int x=0; x<20; x++)
36         {
37             System.out.println(x+"...."+Thread.currentThread().getName());
38         }
39     }
40 }

 

初步使用Thread类创建进程

标签:

原文地址:http://www.cnblogs.com/sunfc/p/4872678.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!