java多线程
来源:才华咖 本文已影响2.52W人
来源:才华咖 本文已影响2.52W人
JAVA多线程实现方式主要有三种:继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程,以下是小编为大家搜索整理的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入门教程:如何使用一个Java
Java多线程同步问题
关于Java程序员面试中的多线程问题总结
关于多线程基本概念的java基本教程参考
JAVA程序员自荐书
java教程之Java编程基础
计算机二级Java入门教程:Java类的基本构成
JAVA多线程并发下的单例模式应用
sun认证java程序员须知Java日志框架
java多线程的同步和异步
Java4安卓开发教程之java的变量
经典Java面试题之Java中Char类型的运算
java多线程教程
计算机二级JAVA考试构建JAVA程序2017
高级Java多线程面试题及回答(15个)
简单地分析Java线程编程中ThreadLocal类的使用
从 JDK 源码角度看 java 并发线程的中断
举例讲解Java中的多线程范文欣赏
Java软件工程师
Java线程编程中的主线程详细介绍
sun认证考试辅导:java关于多线程的部分操作
2016年java多线程面试题及答案
java多线程同步块实例讲解素材
Java线程面试题
Java多线程的定义状态和属性