java Runnable接口如何创建线程
来源:才华咖 本文已影响6.91K人
来源:才华咖 本文已影响6.91K人
导语:编写多线程程序是为了实现多任务的并发执行,从而能够更好地与用户交互。下面是java Runnable接口创建线程的相关资料,欢迎阅读:
java Runnable接口创建线程
创建一个线程,最简单的方法是创建一个实现Runnable接口的类。
为了实现Runnable,一个类只需要执行一个方法调用run(),声明如下:
public void run()
你可以重写该方法,重要的是理解的run()可以调用其他方法,使用其他类,并声明变量,就像主线程一样。
在创建一个实现Runnable接口的`类之后,你可以在类中实例化一个线程对象。
Thread定义了几个构造方法,下面的这个是我们经常使用的:
Thread(Runnable threadOb,String threadName);
这里,threadOb 是一个实现Runnable 接口的类的实例,并且 threadName指定新线程的名字。
新线程创建之后,你调用它的start()方法它才会运行。
void start();
实例
下面是一个创建线程并开始让它执行的实例:
// 创建一个新的线程
class NewThread implements Runnable {
Thread t;
NewThread() {
// 创建第二个新线程
t = new Thread(this, "Demo Thread");
tln("Child thread: " + t);
t(); // 开始线程
}
// 第二个线程入口
public void run() {
try {
for(int i = 5; i > 0; i--) {
tln("Child Thread: " + i);
// 暂停线程
p(50);
}
} catch (InterruptedException e) {
tln("Child interrupted.");
}
tln("Exiting child thread.");
}
}
public class ThreadDemo {
public static void main(String args[]) {
new NewThread(); // 创建一个新线程
try {
for(int i = 5; i > 0; i--) {
tln("Main Thread: " + i);
p(100);
}
} catch (InterruptedException e) {
tln("Main thread interrupted.");
}
tln("Main thread exiting.");
}
}
编译以上程序运行结果如下:
Child thread: Thread[Demo Thread,5,main]
Main Thread: 5
Child Thread: 5
Child Thread: 4
Main Thread: 4
Child Thread: 3
Child Thread: 2
Main Thread: 3
Child Thread: 1
Exiting child thread.
Main Thread: 2
Main Thread: 1
Main thread exiting.
如何实现bootstrap jquery dataTable异步ajax刷新表格数据
Java中break、continue、return语句的使用区别对比
高一英语Unit 3 Travel journal的说课稿
Java Callable和Future学习
JavaScript中null和undefined的异同
Java类如何获取Spring的bean
解析Java中如何获取Spring中配置的bean
英语阅读:African Union Leaders Talk Mali, Chinese Investmen
优秀的英语作文:An Unforgettable Evening
Java中break、continue、return语句的使用区别对比介绍
如何用虚拟光驱Virtual Drive Manager装系统
JAVA认证基础知识:JavaNativeInterface学习小结
Java中如何获取Spring中配置的bean
A Lifeguard at Johns Beach Saved a Drowning Child,A Lifeguar英语作文
Java语言接口interface
java程序中如何调用linux命令
convenience,vocabulary可数吗?
雅思口语范文:My Experience as an English Learner
英语作文:An unforgettable experience
oracle中truncatetable后的数据如何恢复
Java中Number 与 Math 类
java使用ConcurrentHashMap和计数器实现锁的方法
jQuery中的read和JavaScript中的onload函数的区别在哪
如何在Dreamweaver中为网页插入Java程序
英语作文:I became an ultraman 我成了一个奥特曼
Java接口如何定义方法
Unit 9 A Have you ever been to a museum?八年级英语说课稿
高中优秀英语作文An Unforgettable Experience
Language Barrier Between Chi英语阅读大纲
Java线程面试题
高中生优秀英语作文:Have a break away from electronics
Module5Unit1CanIhaveanicecream教学设计及反思素材
如何创建简历
7B Unit5 Abilities第四课时Vcabular教学案
,javascript break和continue区别
Language Barrier Between Chi英语阅读
《You Cant Judge a William by Its Cover》英语美文欣赏
关于Java中Queue和BlockingQueue的区别
低碳生活英语写作范文:An activity about low carbon living
Java开发工程师简历如何写