java多线程学习(1)
1)多线程与多进程的区别
多线程和多进程有什么区别呢?本质的区别在于每个进程有它自己的变量的完备集,线程则共享相同的数据。
对程序来说,共享的变量会使得线程之间的通信比进程间的通信更加有效和简单;同时,线程相对于进程来说,更加的“轻量级”,
线程的创建和销毁要比 进程的 开销要小的多。
2)多线程程序的构造
多线程的构造通常有两种方法,
第一种方法是,构建一个Thread的子类,并重写它的run()方法:
1 class MyThread extends Thread
2 {
3
4 public void run()
5 {
6 ..........
7 }
8
9 }
然后,构造子类的对象并调用它的start()方法:
MyThread myThread = new MyThread();
myThread.start();
第二种方法,构建一个类,实现Runnable接口的run方法:
1 class MyRunnable implements Runnable
2 {
3 public void run()
4 {
5 .......
6 }
7 }
然后由该类创建一个Thread对象,并启用start方法:
1 Runnable r=new MyRunnable();
2
3 Thread t=new Thread(r);
4
5 5 t.start();
推荐使用第二种方法。
2014-07-21 22:02:54