package 线程_177_线程基本信息_优先级_练习;
/**
- 线程基本信息
/
public class MyThread implements Runnable{//Runnable可运行
private boolean flag = true;//加入标识
private int num = 0;
//重写run方法
@Override
public void run() {
while(flag){
System.out.println(Thread.currentThread().getName()+"–>"+num++);
}
}
//提供一个方法
public void stop(){
this.flag = !this.flag;//取反
}
}
//-----------------------------------------------
package 线程_177_线程基本信息_优先级_练习;
/*
- 判断线程是否还在运行
- 方法:currentThread();是个静态方法;返回当前正在执行的线程对象的引用
-
即Thread.currentThread();当前线程
-
setName();设置名称
-
getName();获取名称
-
isAlive():判断状态
- 功能: 取得当前正在运行的线程对象也就是取得自己本
*/
public class InfoDemo01 {
public static void main(String[] args) throws InterruptedException {
//创建线程
MyThread t1 = new MyThread();
Thread proxy = new Thread(t1,"测试");//proxy代理;
//
proxy.setName("test");//test测试如果前面不写'测试'名字;输出显示的是自动编号名字(Thread-0-->0)
System.out.println(proxy.getName());
System.out.println(Thread.currentThread().getName());//这个获取的是main线程
//启动线程
proxy.start();
System.out.println("启动后的状态"+proxy.isAlive());
//加入休眠
Thread.sleep(10);//声明异常
//停止
t1.stop();//发出停止命令系统不能立即停止,系统有个延缓时间
Thread.sleep(5);
System.out.println("停止后的状态"+proxy.isAlive());
}
}
//结果------------------------------------
test
main
启动后的状态true
test–>0;
test–>1;
test–>2;
test–>3;
test–>4;
test–>5;
test–>6;
test–>7;
test–>8;
test–>9;
test–>10;
test–>11;
test–>12;
test–>13;
test–>14;
test–>15;
test–>16;
test–>17;
test–>18;
test–>19;
test–>20;
test–>21;
test–>22;
test–>23;
test–>24;
test–>25;
test–>26;
test–>27;
test–>28;
test–>29;
test–>30;
test–>31;
test–>32;
test–>33;
test–>34;
test–>35;
test–>36;
test–>37;
test–>38;
test–>39;
test–>40;
test–>41;
test–>42;
test–>43;
test–>44;
test–>45;
test–>46;
test–>47;
test–>48;
test–>49;
test–>50;
test–>51;
test–>52;
test–>53;
test–>54;
test–>55;
test–>56;
test–>57;
test–>58;
test–>59;
test–>60;
test–>61;
test–>62;
test–>63;
test–>64;
test–>65;
test–>66;
test–>67;
test–>68;
test–>69;
test–>70;
test–>71;
test–>72;
test–>73;
test–>74;
test–>75;
test–>76;
test–>77;
test–>78;
test–>79;
test–>80;
test–>81;
test–>82;
test–>83;
test–>84;
test–>85;
test–>86;
test–>87;
test–>88;
test–>89;
test–>90;
test–>91;
test–>92;
test–>93;
test–>94;
test–>95;
test–>96;
test–>97;
test–>98;
test–>99;
test–>100;
test–>101;
test–>102;
test–>103;
test–>104;
test–>105;
test–>106;
test–>107;
test–>108;
test–>109;
test–>110;
test–>111;
test–>112;
test–>113;
test–>114;
test–>115;
test–>116;
test–>117;
test–>118;
test–>119;
test–>120;
test–>121;
test–>122;
test–>123;
test–>124;
test–>125;
test–>126;
test–>127;
test–>128;
test–>129;
test–>130;
test–>131;
test–>132;
test–>133;
test–>134;
test–>135;
test–>136;
test–>137;
test–>138;
test–>139;
test–>140;
test–>141;
test–>142;
test–>143;
test–>144;
test–>145;
test–>146;
test–>147;
test–>148;
test–>149;
test–>150;
test–>151;
test–>152;
test–>153;
test–>154;
test–>155;
test–>156;
test–>157;
test–>158;
test–>159;
test–>160;
test–>161;
test–>162;
test–>163;
test–>164;
test–>165;
test–>166;
test–>167;
test–>168;
test–>169;
test–>170;
test–>171;
test–>172;
test–>173;
test–>174;
test–>175;
test–>176;
test–>177;
test–>178;
test–>179;
test–>180;
test–>181;
test–>182;
test–>183;
test–>184;
test–>185;
test–>186;
test–>187;
test–>188;
test–>189;
test–>190;
test–>191;
test–>192;
test–>193;
test–>194;
test–>195;
test–>196;
test–>197;
test–>198;
test–>199;
test–>200;
test–>201;
test–>202;
test–>203;
test–>204;
test–>205;
test–>206;
test–>207;
test–>208;
test–>209;
test–>210;
停止后的状态false
//--------------------------------
package 线程_177_线程基本信息_优先级_练习;
/**
-
优先级:3个常量;设置优先级;不代表先后顺序.只是执行的概率多少 ;最大优先级的概率可能执行的多一些
-
`1.MAX_PRIORITY;最大优先级
-
2.MIN_PRIORITY;最小优先级
-
3.NORM_PRIORITY 标准优先级(系统默认)
-
方法
-
setPriority
-
getPriority
*/
public class InfoDemo02 {public static void main(String[] args) throws InterruptedException {
//创建线程
MyThread t1 = new MyThread();
Thread p1 = new Thread(t1,“测试1”);//p1代理;
MyThread t2 = new MyThread();
Thread p2 = new Thread(t2,“测试2”);//p2代理;
//设置优先级;不代表先后顺序.只是执行的概率多少
p1.setPriority(Thread.MIN_PRIORITY);//设置优先级
p2.setPriority(Thread.MAX_PRIORITY);//设置优先级//启动线程 p1.start(); p2.start(); Thread.sleep(50); t1.stop(); t2.stop();
}
}
// 结果---------------------------------
测试2–>0;
测试2–>1;
测试2–>2;
测试2–>3;
测试2–>4;
测试2–>5;
测试2–>6;
测试2–>7;
测试2–>8;
测试2–>9;
测试2–>10;
测试2–>11;
测试2–>12;
测试2–>13;
测试2–>14;
测试2–>15;
测试2–>16;
测试2–>17;
测试2–>18;
测试2–>19;
测试2–>20;
测试2–>21;
测试2–>22;
测试2–>23;
测试2–>24;
测试2–>25;
测试2–>26;
测试2–>27;
测试2–>28;
测试2–>29;
测试2–>30;
测试2–>31;
测试2–>32;
测试2–>33;
测试2–>34;
测试2–>35;
测试2–>36;
测试2–>37;
测试2–>38;
测试2–>39;
测试2–>40;
测试2–>41;
测试2–>42;
测试2–>43;
测试2–>44;
测试2–>45;
测试2–>46;
测试2–>47;
测试2–>48;
测试2–>49;
测试2–>50;
测试2–>51;
测试2–>52;
测试2–>53;
测试2–>54;
测试2–>55;
测试2–>56;
测试2–>57;
测试2–>58;
测试2–>59;
测试2–>60;
测试1–>0;