Java多線程Thread常用方法
阿新 • • 發佈:2018-06-17
HR 設置 inter ack AR trac dex exception trace
- getName():獲取此線程的名字
- setName():設置此線程的名字
- currentThread():靜態的,調取當前的線程
- run():子線程要執行的代碼放入run()方法中
- start():啟動線程並執行相應的run()方法
package com.yyx.test; public class TestThread { public static void main(String[] args) { ThreadDemo thread1 = new ThreadDemo(); thread1.setName("線程一"); ThreadDemo thread2= new ThreadDemo(); thread2.setName("線程二"); thread1.start(); thread2.start(); } } class ThreadDemo extends Thread { @Override public void run() { for (int i = 1; i <= 20; i++) { System.out.println(Thread.currentThread().getName() + ":" + i); } } }
- join():在A線程中調用B線程的join()方法,表示:當執行到此方法,A線程停止執行,直至B線程執行完畢
- sleep(long l):顯式的讓當前線程睡眠l毫秒
package com.yyx.test; public class TestThread { public static void main(String[] args) { ThreadDemo thread = new ThreadDemo(); thread.setName("線程一"); thread.start(); for(intj=1;j<=20;j++) { Thread.currentThread().setName("主線程"); System.out.println(Thread.currentThread().getName() + ":" + j); if(j==10) { try { thread.join(); } catch (InterruptedException e) { e.printStackTrace(); } } } } } class ThreadDemo extends Thread { @Override public void run() { for (int i = 1; i <= 20; i++) { System.out.println(Thread.currentThread().getName() + ":" + i); try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } } } }
Java多線程Thread常用方法