java中的多线程的常用方法
/*
-
Java中Thread(线程)中的常用方法。
-
1.start():用来启动当前线程,调用当前线程的run()
-
2.run():通常需要重写Thread中的此方法,将创建的线程要执行的操作声明到该方法中。也就是把代码写到run(){}的大括号中
-
3.currentThread():静态方法,返回当前执行代码的线程
-
4.getName:获取当前线程的名字。
-
5.setName:设置当前线程的名字
-
6.yield:释放当前cpu的执行权
-
7.join:如果在线程a中调用线程b的join方法(b.join),那么,线程a就会进入阻塞状态,直到线程b完全执行完以后,线程a才会结束阻塞状态。
-
8.stop:强制结束当前线程(已过时,不推荐使用)
-
9.sleep(long millitime):让当前线程睡眠“millitime”指定的毫秒数。在指定的毫秒数内,当前线程是阻塞状态。
-
10.isAlive():判断当前线程是否还存活。 */
package A_ShangGuiGu.Thread.ThreadDemo;
/***
* Java中Thread(线程)中的常用方法。
* 1.start():用来启动当前线程,调用当前线程的run()
* 2.run():通常需要重写Thread中的此方法,将创建的线程要执行的操作声明到该方法中。也就是把代码写到run(){}的大括号中
* 3.currentThread():静态方法,返回当前执行代码的线程
* 4.getName:获取当前线程的名字。
* 5.setName:设置当前线程的名字
* 6.yield:释放当前cpu的执行权
* 7.join:如果在线程a中调用线程b的join方法(b.join),那么,线程a就会进入阻塞状态,直到线程b完全执行完以后,线程a才会结束阻塞状态。
* 8.stop:强制结束当前线程(已过时,不推荐使用)
* 9.sleep(long millitime):让当前线程睡眠“millitime”指定的毫秒数。在指定的毫秒数内,当前线程是阻塞状态。
* 10.isAlive():判断当前线程是否还存活。
*/
class MyThread extends Thread{
@Override
public void run() {
for (int i = 0; i < 100; i++) {
if (i%2==0){
try {
sleep(100);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
System.out.println(Thread.currentThread().getName()+":"+i);
if (i%10==0){
yield();
}
}
}
}
}
public class ThreadDemo02 {
public static void main(String[] args) {
MyThread t1 = new MyThread();
t1.start();
for (int i = 0; i < 100; i++) {
if (i%2==0){
System.out.println(Thread.currentThread().getName()+":"+i);
if (i==20){
try {
t1.join();
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
}
}
Thread.currentThread().setName("主线程");
}
System.out.println(t1.isAlive());
}
}
标签:常用,java,Thread,阻塞状态,join,线程,当前,run,多线程 From: https://www.cnblogs.com/zhazhawei906/p/16812090.html