线程改名:
public class Test_03 {
public static void main(String[] args) {
Thread thread = new Thread(new MyThread(),"线程1");//线程改名方法
System.out.println(thread.getName());
}
运行线程线程:
public static void main(String[] args) {
Thread myThread = new MyThread();
//myThread.run();
myThread.start();//线程运行用start();
System.out.println(Thread.currentThread().getName());
获取当前线程名字:
public static void main(String[] args) {
Thread thread = Thread.currentThread();
System.out.println(Thread.currentThread().getName());//获取当前线程名字
进程的5个状态:
创建状态
就绪状态
运行状态
阻塞状态 //不一定有
死亡状态
优先级: 线程优先级越高 不一定被先调用 只是被调用的概率增加
public class Test {
public static void main(String[] args) {
MyThread myThread = new MyThread();
myThread.start();
MyThread myThread2 = new MyThread();
myThread2.start();
System.out.println(myThread.getPriority());//优先级 默认5 优先级别高的 只是被执行概率高
System.out.println(myThread2.getPriority());
}
}
join();
try {
thread2.join();//join方法 让一个线程完了在弄其他线程
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
yield();
for (int i = 0; i < 10; i++) {
try {
Thread.yield();//线程的礼让 //礼让不是一定让出去而是减少被执行的概率 降低自己优先权
} catch (Exception e) {
// TODO: handle exception
}
synchronized (this) {}//锁定 同时刻不会抢相同的
Hashtable 安全
StringBuilder 安全效率低