资源简介
自己学着编写的一个JAVA多线程程序,该程序实现的功能是:在主线程main中创建两个子线程,A和B,线程A先运行,再运行B线程,当两个子线程都运行完毕后,才运行主线程,并最终结束整个程序的运行。
希望该程序对初学JAVA线程的朋友有帮助...
希望该程序对初学JAVA线程的朋友有帮助...
代码片段和文件信息
package thread;
/**
* write by agan
* E-mail:gsqsunny@gmain.com
* 2009.1.3
* 通过实现 Runnable 接口实现多线程
* description:
* We create two subThreads (thread A and thread B )in the main thread.
* The main thread is started firstly then the thread A is started.
* When the thread A run over the thread B is started.
* The main thread run over until the two subThreads are over .
*/
public class TestMitiThreadrunable implements Runnable{
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println(Thread.currentThread().getName() + “ 线程运行开始!“);
System.out.println(“----------------------------------------“);
TestMitiThreadrunable test = new TestMitiThreadrunable();
Thread thread1 = new Thread(test);
Thread thread2 = new Thread(test);
thread1.setName(“A“);
thread1.start();
thread2.setName(“B“);
// wait for thread1 is over then startup thread2
try {
thread1.join();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
thread2.start();
if(thread2.isAlive())
try {
Thread.currentThread().sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(“----------------------------------------“);
System.out.println(Thread.currentThread().getName() + “ 线程运行结束!“);
}
public void run(){
System.out.println(“----------------------------------------“);
System.out.println(Thread.currentThread().getName()+“ 线程运行开始!“);
System.out.println(“ThreadName :“+Thread.currentThread().getName());
System.out.println(“ThreadID :“+Thread.currentThread().getId());
System.out.println(“ThreadPriority:“+Thread.currentThread().getPriority());
System.out.println(“ThreadGroup :“+Thread.currentThread().getThreadGroup());
for (int i = 0; i < 10; i++) {
System.out.println(i + “ “ + Thread.currentThread().getName());
try {
Thread.sleep((int) Math.random() * 10);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
System.out.println(Thread.currentThread().getName() + “ 线程运行结束!“);
System.out.println(“----------------------------------------“);
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2475 2009-01-03 14:30 java 多线程实例\TestMitiThreadrunable.java
文件 684 2009-01-03 14:30 java 多线程实例\运行结果.txt
目录 0 2009-01-03 14:31 java 多线程实例
----------- --------- ---------- ----- ----
3159 3
- 上一篇:JAVA计算器实验报告与源码
- 下一篇:java多人五子棋源码
相关资源
- java多人五子棋源码
- JAVA计算器实验报告与源码
- 人事信息管理系统 java课程设计
- 学生信息管理系统 JAVA课程设计
- 自己用java写的计算器源代码(代码注
- 棋盘覆盖---JAVA版
- 语音识别 sphinx4 JAVA 教程
- 用Java实现TCP通信
- java SQLServer做的员工管理系统
- JAVA坦克大战游戏源代码
- 用Java编写的扫雷游戏源代码
- 采用TCP SOCKET技术编写C/S模式的java聊天
- 《java程序设计》书附源代码
- Java程序设计考试试卷和答案(共4套)
- java做的人事档案管理系统
- java 局域网数据包嗅探
- Java 透明按钮 Java透明按钮
- Java写的递归下降分析程序
- 北大青鸟accp5.0java第四章理论加上机作
- java用spring struts hibernate做的学生成绩
- jsp mysql tomcat学生信息管理系统
- 科研管理系统 java swing mysql
- java真实项目煤矿管理系统
- 基于JAVA的物业收费管理系统源代码
- 东南大学 JAVA课程设计 学生信息管理
- Java大作业 学生成绩管理系统
- java图片轮播代码 可控制
- jsp成绩管理系统jsp servlet javabean
- java编写的迅雷下载器
- 贪吃蛇(java 源码 eclipse项目)
评论
共有 条评论