JAVA多线程学习1
一、进程与线程
线程是指进程内的一个执行单元(可理解为程序内的一条执行路径),也是进程内的可调度实体。
线程与进程的区别:
1.线程是进程的一个执行单元,一个进程可以拥有多个线程,线程之间共享进程的地址空间。而进程有自己的独立的地址空间。
2.进程是资源分配的基本单元,进程内的线程共享进程的资源。
3.线程是处理器调度的基本单元,而进程不是。
4.二者均可以并发执行。
二、JAVA实现线程的方式
1.实现Runnable接口,重写run()方法
2.继承Thread类,重写run()方法
注:启动线程一定使用Thread类的start()方法,而不是方法调用run()。
package cn.edu.sdust.Thread1; public class ThreadTest1 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Runner runner = new Runner(); Thread t = new Thread(runner); t.start();//启动线程方法,而不是方法调用 Runner1 runner1 = new Runner1(); runner1.start(); for(int i=0; i<100; i++){ System.out.println("Main Thread:"+i); } } } class Runner implements Runnable{ //实现线程的方法之一:实现Runnable接口,重写run方法 @Override public void run() { // TODO Auto-generated method stub for(int i=0;i<100;i++){ System.out.println("Runner:"+i); } } } class Runner1 extends Thread{ //实现线程的方法二:继承Thread类 public void run() { // TODO Auto-generated method stub for(int i=0;i<100;i++){ System.out.println("Runner1:"+i); } } }