当前位置:学者斋 >

计算机 >java语言 >

java多线程

java多线程

JAVA线程实现方式主要有三种:继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程,以下是小编为大家搜索整理的java多线程,欢迎阅读!更多精彩内容请及时关注我们应届毕业生考试网!

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();

}

}

结果如下所示:

0

Thread-1

0

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();

}

}

标签: 多线程 JAVA
  • 文章版权属于文章作者所有,转载请注明 https://xuezhezhai.com/jsj/java/l11l1.html