首页 > 互联网 > 计算机 > java语言 > java多线程介绍

java多线程介绍

   来源:学问社    阅读: 4.16K 次
字号:

用手机扫描二维码 在手机上继续观看

手机查看

  多线程的基本实现

java多线程介绍

进程指运行中的程序,每个进程都会分配一个内存空间,一个进程中存在多个线程,启动一个JAVA虚拟机,就是打开个一个进程,一个进程有多个线程,当多个线程同时进行,就叫并发。

Java创建线程的两种方式为: 继承Thread类 和实现Runnable接口

  Thread类

1、通过覆盖run方法实现线程要执行的程序代码

2、Start()开始执行多线程

package iancheng;

public class d1 extends Thread{

public void run(){

for(int i=0 ; i<50; i++){

tln(i);

tln(currentThread()。getName());

try {

sleep(100);

} catch (InterruptedException e) {

// TODO Auto-generatedcatch block

tStackTrace();

}

}

}

public static void main(String[] args){

new d1()。start();

new d1()。start();

}

}

多个线程共享一个实例的.时候,代码代码如下:

package iancheng;

public class d1 extends Thread{

int i=0;

public void run(){

for(i=0 ; i<50; i++){

tln(i);

tln(currentThread()。getName());

try {

sleep(100);

} catch (InterruptedException e) {

// TODO Auto-generatedcatch block

tStackTrace();

}

}

}

public static void main(String[] args){

new d1()。start();

new d1()。start();

}

}

结果如下所示:

Thread-1

Thread-0

1

Thread-1

1

实际2个线程在操纵不同的变量a,在执行run方法时候,线程把a都当做自己的变量在执行。

Runnable接口实现多线程

当一个继承自Thread时,就不能再继承其他类,使用Runnable接口解决了此问题,在新建一个Thread类中,在构造方法中初始化

Thread(Runnable target)

分配新的 Thread 对象。

Thread(Runnable target,String name)

分配新的 Thread 对象。

package iancheng;

public class D2 implements Runnable{

int i=0;

public void run(){

for(i=0 ; i<50; i++){

tln(i);

tln(entThread()。getName());

try {

p(100);

} catch (InterruptedException e) {

// TODO Auto-generatedcatch block

tStackTrace();

}

}

}

public static void main(String[] args){

D2 d=new D2();

Thread t=new Thread(d);

t();

}

}

计算机一级
计算机二级
计算机三级
计算机四级
C语言
java语言
php语言
网络技术