您的位置:首页 > 其它

第二种:自定义类MyThread 实现Runnable接口,主函数创建5个线程,自定义线程类的构造函数输出 创建线程X * run方法内统计每个线程 一共6次

2016-04-12 22:37 801 查看
package com.heima.gu;

import java.util.HashMap;

public class Test03 {
/**自定义类MyThread 实现Runnable接口,主函数创建5个线程,自定义线程类的构造函数输出  创建线程X
* run方法内统计每个线程 一共6次
* 用hashmap 集合 统计每个线程的次数,创建五个集合。
* @param args
*/
public static void main(String[] args) {
int i;
for(i = 1; i <= 5;i++){
new Thread(new MyThread("线程"+i),"线程"+i){
}.start();
}
}
}
class MyThread implements Runnable{
public MyThread(String str){
System.out.println("创建"+str);
}
int count = 6;
@Override
public void run() {
HashMap<String, Integer> hm = new HashMap<String, Integer>();
hm.put(Thread.currentThread().getName(), 0);
while(true){
synchronized (MyThread.class) {
if(hm.get(Thread.currentThread().getName()) >= count){
break;
}else{
hm.put(Thread.currentThread().getName(), hm.get(Thread.currentThread().getName())+1);
System.out.println(Thread.currentThread().getName()+" :计数"+ hm.get(Thread.currentThread().getName()));
}
for (String str : hm.keySet()) {
System.out.println("**"+str+"*******"+hm.get(str));
}
}
}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: