Learn about bash? shell? (一)

1. 什麼是shell?
=> 

在system call之外的應用程式,都是shell(廣義)

2. 什麼是bash?
常聽到的 Bourne SHell (sh) 、在 Sun 裡頭預設的 C SHell、 商業上常用的 K SHell、, 還有 TCSH 等等,每一種 Shell 都各有其特點
-> Bourne Again SHell (簡稱 bash)

3. 為什麼要用bash?
優點:
1) 能查詢history(之前在資工系用的工作站就不支援查詢,每次指令都要重打,超煩XD)
=> less ~/.bash_history
裡面有之前輸入過的指令(被駭客取得root權限後,查看裡面就可能得知某某伺服器帳密)

2) tab補足指令或檔案名稱(完全是福音,使用沒有tab補足功能的shell會死掉哈哈)
tab按一下:補足指令或檔名
tab按兩下:顯示接下來有哪些選項是符合的

3) alias指令別名(可以把常使用的指令設成更簡單好懂好打的方式)
=> alias lm = ‘ls -al’

4) job control, background, foreground

5) shell script 程式化腳本(批次檔的感覺,把一連串的連續指令寫成script,之後只要執行script就不用一行一行keyin)

6) wildcard 萬用字元

4. 查詢某指令是否為bash shell內建命令
-> type [-tpa] command
ex. type -t ls

herongsendeMacBook-Air:~ RongSonHo$ type -t ls
file

顯示file -> 外部命令
顯示alias -> 別名
顯示builtin -> 內建命令
-p: 若command為外部命令時,會顯示完整檔案路徑

herongsendeMacBook-Air:~ RongSonHo$ type -p ls
/bin/ls

-a: 把$PATH中,含有command的指令都列出來
ex. type -a pwd

herongsendeMacBook-Air:~ RongSonHo$ type -a pwd
pwd is a shell builtin

pwd is /bin/pwd

ps. which指令,也有類似的功能哦

5. $PATH 環境變數在幹麻的?
=> 當我們在終端機輸入指令後,shell會到$PATH中的資料夾中尋找相對應的指令,若找不到指令就執行不了。

herongsendeMacBook-Air:~ RongSonHo$ echo $PATH
/Users/RongSonHo/.rbenv/shims:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

6. 如何改變命令提示字元的預設顯示呢?
herongsendeMacBook-Air:~ RongSonHo$ 
改變PS1這個環境變數
我的PS1長這樣:

herongsendeMacBook-Air:~ RongSonHo$ echo $PS1
h:W u$



但直接修改PS1只會在當個tty改變

7. 如何永久改變PS1?
=> cd ~
=> ls -a
=> vim .bash_profile
=>

if which rbenv > /dev/null; then eval “$(rbenv init -)”; fi
export PS1='[就決定是你了,帥榮森! t: W ]$ ‘

參考:
1. 鳥哥:
http://linux.vbird.org/linux_basic/0320bash.php#ps2

LinkedList practice in C

1. single (direction) linked list:

– linkedlist.c:

#include <stdio.h>
#include <stdlib.h>

typedef struct ns{
int data;
struct ns* next;
}node;

node* create_node(int);
void insert_node(node*, node*);
void remove_node(node*);
void print_lists(node*);
void free_lists(node*);


node* create_node(int data){
node* n = (node*) malloc(sizeof(node));
n->data = data;
n->next = NULL;

return n;
}

void insert_node(node* n1, node* n2){
n2->next = n1->next;
n1->next = n2;
}

void remove_node(node* n1){
n1->next = n1->next->next;
}

void print_lists(node* lists){
node* n = lists;

while(n!=NULL){
printf(“%d”, n->data);
n = n->next;
}
printf(“n”);
}

void free_lists(node* lists){
if(lists->next != NULL){
free_lists(lists->next);
}
free(lists);
}


– main.c:

#include “linkedlist.c”

int main(void){
printf(“Hello worldn”);

node* singleLinkedListHead = create_node(9);

for(int i=0; i<10; i++){
node *tempNode = create_node(i);
insert_node(singleLinkedListHead, tempNode);
}

print_lists(singleLinkedListHead);
return 0;

}

2. double (direction) linked list :
– 
參考:
1. Infinite Loop:「演算」連結串列:
http://program-lover.blogspot.tw/2008/05/linked-list.html
2. [資料結構]教學:
http://notepad.yehyeh.net/Content/DS/CH04/3.php

Write a Hello world shell script in mac os x

1. 在家目錄(/Users/RongSon/)下創”bin”資料夾

cd /Users/RongSon
mkdir bin

2. 進去bin資料夾後,開始寫script囉~
cd bin
vim hello.sh
3. script內容:
#!/bin/bash
# Program:
# This program shows "Hello World!" in your screen.
# History:
# 2015/07/16 VBird First release
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
echo "Hello World! a n"
exit 0

不懂PATH那一行….
只知道是設定環境變數,但是不知道代表的意思
因為在這個範例中
即使不加PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
還是一樣可以印出Hello world!
試過只有打
echo "Hello World! a n"
也是可以跑的
4. 執行shell script:
sh hello.sh
參考:
1. 鳥哥第十二章-學習shell script:
http://linux.vbird.org/linux_basic/0340bashshell-scripts.php#script_1st

More practice for multi-thread in java (join)

1. join:

class test2{
public static void main(String[] args){
System.out.println(“Hello test2”);
bThread thread1 = new bThread();
bThread thread2 = new bThread();
bThread thread3 = new bThread();
bThread thread4 = new bThread();
Thread thread1b = new Thread(thread1);
Thread thread2b = new Thread(thread2);
Thread thread3b = new Thread(thread3);
Thread thread4b = new Thread(thread4);

thread1b.start();
thread2b.start();
thread3b.start();
thread4b.start();
        System.out.println(“Thread count: “+ Thread.activeCount());
        
        try{
            thread1b.join(); //wait for thread1 join main thread
            System.out.println(thread1b +” join ~~~~~~”);
            thread2b.join();
            System.out.println(thread2b +” join ~~~~~~”);
            thread3b.join();
            System.out.println(thread3b +” join ~~~~~~”);
            thread4b.join();
            System.out.println(thread4b +” join ~~~~~~”);
            
        }catch(InterruptedException e){
            System.out.println(“join error”);
        }

System.out.println(“Thread count: “+ Thread.activeCount());
}
}

class bThread implements Runnable{
public void run(){
for(int i=0; i<100; i++){
String threadName = Thread.currentThread().getName();
System.out.println(threadName+ “: “+ i);
        }
}
public bThread(){
System.out.println(“This is bThread!”);
}

}


執行結果:

herongsendeMacBook-Air:160704-multithread RongSonHo$ java test2
Hello test2
This is bThread!
This is bThread!
This is bThread!
This is bThread!
Thread-0: 0
Thread count: 5
Thread-3: 0
Thread-2: 0
Thread-1: 0
Thread-1: 1
Thread-1: 2
Thread-2: 1
Thread-3: 1
Thread-0: 1
Thread-3: 2
Thread-2: 2
Thread-1: 3
Thread-2: 3
Thread-3: 3
Thread-0: 2
Thread-3: 4
Thread-2: 4
Thread-2: 5
Thread-2: 6
Thread-1: 4
Thread-2: 7
Thread-3: 5
Thread-0: 3
Thread-3: 6
Thread-2: 8
Thread-1: 5
Thread-2: 9
Thread-3: 7
Thread-0: 4
Thread-3: 8
Thread-2: 10
Thread-1: 6
Thread-2: 11
Thread-3: 9
Thread-0: 5
Thread-3: 10
Thread-2: 12
Thread-1: 7
Thread-2: 13
Thread-3: 11
Thread-0: 6
Thread-3: 12
Thread-2: 14
Thread-1: 8
Thread-2: 15
Thread-2: 16
Thread-3: 13
Thread-0: 7
Thread-3: 14
Thread-2: 17
Thread-1: 9
Thread-2: 18
Thread-3: 15
Thread-0: 8
Thread-3: 16
Thread-2: 19
Thread-1: 10
Thread-1: 11
Thread-1: 12
Thread-2: 20
Thread-3: 17
Thread-0: 9
Thread-3: 18
Thread-2: 21
Thread-1: 13
Thread-2: 22
Thread-3: 19
Thread-0: 10
Thread-3: 20
Thread-2: 23
Thread-1: 14
Thread-2: 24
Thread-3: 21
Thread-0: 11
Thread-3: 22
Thread-2: 25
Thread-1: 15
Thread-2: 26
Thread-3: 23
Thread-0: 12
Thread-3: 24
Thread-2: 27
Thread-1: 16
Thread-2: 28
Thread-3: 25
Thread-0: 13
Thread-3: 26
Thread-2: 29
Thread-1: 17
Thread-2: 30
Thread-3: 27
Thread-0: 14
Thread-0: 15
Thread-0: 16
Thread-3: 28
Thread-2: 31
Thread-1: 18
Thread-2: 32
Thread-3: 29
Thread-0: 17
Thread-0: 18
Thread-3: 30
Thread-2: 33
Thread-1: 19
Thread-2: 34
Thread-3: 31
Thread-0: 19
Thread-3: 32
Thread-2: 35
Thread-1: 20
Thread-2: 36
Thread-3: 33
Thread-0: 20
Thread-3: 34
Thread-2: 37
Thread-1: 21
Thread-2: 38
Thread-3: 35
Thread-0: 21
Thread-3: 36
Thread-2: 39
Thread-1: 22
Thread-2: 40
Thread-3: 37
Thread-0: 22
Thread-3: 38
Thread-2: 41
Thread-1: 23
Thread-2: 42
Thread-3: 39
Thread-0: 23
Thread-3: 40
Thread-2: 43
Thread-1: 24
Thread-2: 44
Thread-2: 45
Thread-3: 41
Thread-0: 24
Thread-3: 42
Thread-3: 43
Thread-3: 44
Thread-2: 46
Thread-1: 25
Thread-2: 47
Thread-2: 48
Thread-3: 45
Thread-0: 25
Thread-3: 46
Thread-2: 49
Thread-1: 26
Thread-2: 50
Thread-3: 47
Thread-0: 26
Thread-3: 48
Thread-2: 51
Thread-1: 27
Thread-2: 52
Thread-3: 49
Thread-0: 27
Thread-3: 50
Thread-2: 53
Thread-1: 28
Thread-1: 29
Thread-2: 54
Thread-3: 51
Thread-0: 28
Thread-3: 52
Thread-2: 55
Thread-1: 30
Thread-2: 56
Thread-3: 53
Thread-0: 29
Thread-0: 30
Thread-3: 54
Thread-2: 57
Thread-1: 31
Thread-2: 58
Thread-3: 55
Thread-0: 31
Thread-3: 56
Thread-2: 59
Thread-1: 32
Thread-2: 60
Thread-3: 57
Thread-0: 32
Thread-3: 58
Thread-2: 61
Thread-1: 33
Thread-2: 62
Thread-3: 59
Thread-0: 33
Thread-3: 60
Thread-2: 63
Thread-1: 34
Thread-2: 64
Thread-2: 65
Thread-3: 61
Thread-0: 34
Thread-3: 62
Thread-2: 66
Thread-1: 35
Thread-2: 67
Thread-2: 68
Thread-3: 63
Thread-0: 35
Thread-3: 64
Thread-2: 69
Thread-1: 36
Thread-1: 37
Thread-2: 70
Thread-3: 65
Thread-3: 66
Thread-3: 67
Thread-3: 68
Thread-0: 36
Thread-3: 69
Thread-2: 71
Thread-1: 38
Thread-2: 72
Thread-3: 70
Thread-0: 37
Thread-3: 71
Thread-3: 72
Thread-3: 73
Thread-2: 73
Thread-1: 39
Thread-2: 74
Thread-3: 74
Thread-0: 38
Thread-3: 75
Thread-2: 75
Thread-1: 40
Thread-2: 76
Thread-3: 76
Thread-3: 77
Thread-0: 39
Thread-3: 78
Thread-2: 77
Thread-1: 41
Thread-1: 42
Thread-2: 78
Thread-3: 79
Thread-0: 40
Thread-3: 80
Thread-2: 79
Thread-1: 43
Thread-2: 80
Thread-3: 81
Thread-3: 82
Thread-0: 41
Thread-3: 83
Thread-2: 81
Thread-1: 44
Thread-2: 82
Thread-3: 84
Thread-0: 42
Thread-3: 85
Thread-2: 83
Thread-1: 45
Thread-2: 84
Thread-3: 86
Thread-0: 43
Thread-3: 87
Thread-2: 85
Thread-1: 46
Thread-2: 86
Thread-3: 88
Thread-0: 44
Thread-3: 89
Thread-2: 87
Thread-1: 47
Thread-2: 88
Thread-3: 90
Thread-0: 45
Thread-3: 91
Thread-2: 89
Thread-1: 48
Thread-1: 49
Thread-1: 50
Thread-2: 90
Thread-3: 92
Thread-0: 46
Thread-3: 93
Thread-2: 91
Thread-1: 51
Thread-1: 52
Thread-2: 92
Thread-3: 94
Thread-0: 47
Thread-3: 95
Thread-2: 93
Thread-1: 53
Thread-2: 94
Thread-3: 96
Thread-0: 48
Thread-3: 97
Thread-0: 49
Thread-2: 95
Thread-1: 54
Thread-2: 96
Thread-0: 50
Thread-3: 98
Thread-0: 51
Thread-2: 97
Thread-1: 55
Thread-1: 56
Thread-2: 98
Thread-0: 52
Thread-3: 99
Thread-0: 53
Thread-0: 54
Thread-2: 99
Thread-1: 57
Thread-0: 55
Thread-0: 56
Thread-1: 58
Thread-0: 57
Thread-0: 58
Thread-1: 59
Thread-0: 59
Thread-0: 60
Thread-0: 61
Thread-1: 60
Thread-0: 62
Thread-0: 63
Thread-0: 64
Thread-1: 61
Thread-1: 62
Thread-0: 65
Thread-0: 66
Thread-0: 67
Thread-1: 63
Thread-0: 68
Thread-1: 64
Thread-0: 69
Thread-0: 70
Thread-1: 65
Thread-1: 66
Thread-0: 71
Thread-1: 67
Thread-0: 72
Thread-0: 73
Thread-1: 68
Thread-0: 74
Thread-1: 69
Thread-0: 75
Thread-1: 70
Thread-1: 71
Thread-0: 76
Thread-1: 72
Thread-0: 77
Thread-0: 78
Thread-0: 79
Thread-1: 73
Thread-0: 80
Thread-1: 74
Thread-1: 75
Thread-1: 76
Thread-0: 81
Thread-1: 77
Thread-0: 82
Thread-0: 83
Thread-1: 78
Thread-0: 84
Thread-1: 79
Thread-0: 85
Thread-0: 86
Thread-1: 80
Thread-0: 87
Thread-1: 81
Thread-1: 82
Thread-0: 88
Thread-0: 89
Thread-1: 83
Thread-0: 90
Thread-1: 84
Thread-1: 85
Thread-0: 91
Thread-1: 86
Thread-0: 92
Thread-1: 87
Thread-1: 88
Thread-0: 93
Thread-1: 89
Thread-1: 90
Thread-1: 91
Thread-0: 94
Thread-0: 95
Thread-1: 92
Thread-0: 96
Thread-0: 97
Thread-0: 98
Thread-1: 93
Thread-0: 99
Thread-1: 94
Thread-1: 95
Thread[Thread-0,5,] join ~~~~~~
Thread-1: 96
Thread-1: 97
Thread-1: 98
Thread-1: 99
Thread[Thread-1,5,] join ~~~~~~
Thread[Thread-2,5,] join ~~~~~~
Thread[Thread-3,5,] join ~~~~~~
Thread count: 1

———————


herongsendeMacBook-Air:160704-multithread RongSonHo$ java test2
Hello test2
This is bThread!
This is bThread!
This is bThread!
This is bThread!
Thread-0: 0
Thread-0: 1
Thread-1: 0
Thread-1: 1
Thread-2: 0
Thread-0: 2
Thread-2: 1
Thread-2: 2
Thread-1: 2
Thread-1: 3
Thread-3: 0
Thread-2: 3
Thread-0: 3
Thread-2: 4
Thread-3: 1
Thread-1: 4
Thread-3: 2
Thread-2: 5
Thread-0: 4
Thread-2: 6
Thread-3: 3
Thread-1: 5
Thread-3: 4
Thread-2: 7
Thread-0: 5
Thread-2: 8
Thread-3: 5
Thread-1: 6
Thread-3: 6
Thread-2: 9
Thread-0: 6
Thread-2: 10
Thread-3: 7
Thread-1: 7
Thread-3: 8
Thread-2: 11
Thread-0: 7
Thread-2: 12
Thread-3: 9
Thread-1: 8
Thread-3: 10
Thread-2: 13
Thread-0: 8
Thread-2: 14
Thread-3: 11
Thread-1: 9
Thread-3: 12
Thread-2: 15
Thread-0: 9
Thread-2: 16
Thread-3: 13
Thread-1: 10
Thread-3: 14
Thread-2: 17
Thread-2: 18
Thread-0: 10
Thread-2: 19
Thread-2: 20
Thread-3: 15
Thread-1: 11
Thread-3: 16
Thread-2: 21
Thread-0: 11
Thread-2: 22
Thread-2: 23
Thread-2: 24
Thread-2: 25
Thread-3: 17
Thread-3: 18
Thread-3: 19
Thread-3: 20
Thread-3: 21
Thread-3: 22
Thread-1: 12
Thread-3: 23
Thread-2: 26
Thread-0: 12
Thread-2: 27
Thread-3: 24
Thread-1: 13
Thread-3: 25
Thread-2: 28
Thread-0: 13
Thread-2: 29
Thread-3: 26
Thread-1: 14
Thread-3: 27
Thread-2: 30
Thread-0: 14
Thread-2: 31
Thread-3: 28
Thread-1: 15
Thread-3: 29
Thread-3: 30
Thread-2: 32
Thread-0: 15
Thread-2: 33
Thread-3: 31
Thread-1: 16
Thread-3: 32
Thread-2: 34
Thread-0: 16
Thread-2: 35
Thread-3: 33
Thread-1: 17
Thread-3: 34
Thread-2: 36
Thread-0: 17
Thread-0: 18
Thread-2: 37
Thread-3: 35
Thread-1: 18
Thread-3: 36
Thread-2: 38
Thread-0: 19
Thread-2: 39
Thread-2: 40
Thread-3: 37
Thread-1: 19
Thread-3: 38
Thread-3: 39
Thread-2: 41
Thread-0: 20
Thread-2: 42
Thread-3: 40
Thread-1: 20
Thread-3: 41
Thread-3: 42
Thread-2: 43
Thread-0: 21
Thread-2: 44
Thread-3: 43
Thread-1: 21
Thread-3: 44
Thread-2: 45
Thread-0: 22
Thread-2: 46
Thread-3: 45
Thread-1: 22
Thread-3: 46
Thread-2: 47
Thread-0: 23
Thread-2: 48
Thread-3: 47
Thread-3: 48
Thread-1: 23
Thread-1: 24
Thread-3: 49
Thread-2: 49
Thread-0: 24
Thread-2: 50
Thread-3: 50
Thread-1: 25
Thread-3: 51
Thread-2: 51
Thread-0: 25
Thread-2: 52
Thread-3: 52
Thread-1: 26
Thread-3: 53
Thread-2: 53
Thread-0: 26
Thread-2: 54
Thread-3: 54
Thread-1: 27
Thread-3: 55
Thread-2: 55
Thread-0: 27
Thread-2: 56
Thread-3: 56
Thread-1: 28
Thread-3: 57
Thread-2: 57
Thread-0: 28
Thread-0: 29
Thread-2: 58
Thread-3: 58
Thread-1: 29
Thread-3: 59
Thread-3: 60
Thread-2: 59
Thread-0: 30
Thread-2: 60
Thread-2: 61
Thread-3: 61
Thread-1: 30
Thread-1: 31
Thread-3: 62
Thread-3: 63
Thread-2: 62
Thread-0: 31
Thread-0: 32
Thread-2: 63
Thread-3: 64
Thread-1: 32
Thread-3: 65
Thread-2: 64
Thread-0: 33
Thread-2: 65
Thread-2: 66
Thread-3: 66
Thread-1: 33
Thread-1: 34
Thread-3: 67
Thread-2: 67
Thread-0: 34
Thread-2: 68
Thread-3: 68
Thread-3: 69
Thread-1: 35
Thread-1: 36
Thread-3: 70
Thread-2: 69
Thread-0: 35
Thread-2: 70
Thread-3: 71
Thread-1: 37
Thread-3: 72
Thread-2: 71
Thread-0: 36
Thread-2: 72
Thread-3: 73
Thread-1: 38
Thread-3: 74
Thread-3: 75
Thread-2: 73
Thread-0: 37
Thread-2: 74
Thread-3: 76
Thread-1: 39
Thread-3: 77
Thread-2: 75
Thread-0: 38
Thread-0: 39
Thread-2: 76
Thread-3: 78
Thread-3: 79
Thread-1: 40
Thread-3: 80
Thread-3: 81
Thread-2: 77
Thread-0: 40
Thread-2: 78
Thread-3: 82
Thread-1: 41
Thread-1: 42
Thread-1: 43
Thread-3: 83
Thread-2: 79
Thread-0: 41
Thread-2: 80
Thread-3: 84
Thread-1: 44
Thread-3: 85
Thread-2: 81
Thread-0: 42
Thread-2: 82
Thread-3: 86
Thread-1: 45
Thread-3: 87
Thread-2: 83
Thread-0: 43
Thread-2: 84
Thread-3: 88
Thread-1: 46
Thread-3: 89
Thread-2: 85
Thread-0: 44
Thread-0: 45
Thread-2: 86
Thread-3: 90
Thread-1: 47
Thread-3: 91
Thread-2: 87
Thread-0: 46
Thread-2: 88
Thread-3: 92
Thread-1: 48
Thread-3: 93
Thread-2: 89
Thread-0: 47
Thread-2: 90
Thread-3: 94
Thread-1: 49
Thread-3: 95
Thread-2: 91
Thread-0: 48
Thread-0: 49
Thread-2: 92
Thread-3: 96
Thread-1: 50
Thread-1: 51
Thread-3: 97
Thread-2: 93
Thread-0: 50
Thread-2: 94
Thread-3: 98
Thread-1: 52
Thread-3: 99
Thread-2: 95
Thread-0: 51
Thread-2: 96
Thread-1: 53
Thread-2: 97
Thread-0: 52
Thread-2: 98
Thread-1: 54
Thread-2: 99
Thread-0: 53
Thread-1: 55
Thread-1: 56
Thread-0: 54
Thread-0: 55
Thread-1: 57
Thread-0: 56
Thread-0: 57
Thread-1: 58
Thread-0: 58
Thread-1: 59
Thread-0: 59
Thread-1: 60
Thread-1: 61
Thread-0: 60
Thread-1: 62
Thread-0: 61
Thread-0: 62
Thread-1: 63
Thread-0: 63
Thread-0: 64
Thread-1: 64
Thread-0: 65
Thread-1: 65
Thread-0: 66
Thread-0: 67
Thread-1: 66
Thread-0: 68
Thread-1: 67
Thread-0: 69
Thread-1: 68
Thread-0: 70
Thread-0: 71
Thread-1: 69
Thread-1: 70
Thread-0: 72
Thread-1: 71
Thread-0: 73
Thread-1: 72
Thread-0: 74
Thread-1: 73
Thread-1: 74
Thread-0: 75
Thread-0: 76
Thread-1: 75
Thread-0: 77
Thread-1: 76
Thread-1: 77
Thread-0: 78
Thread-1: 78
Thread-1: 79
Thread-0: 79
Thread-0: 80
Thread-1: 80
Thread-0: 81
Thread-1: 81
Thread-1: 82
Thread-0: 82
Thread-0: 83
Thread-0: 84
Thread-1: 83
Thread-0: 85
Thread-1: 84
Thread-0: 86
Thread-0: 87
Thread-1: 85
Thread-1: 86
Thread-0: 88
Thread-1: 87
Thread-1: 88
Thread-0: 89
Thread-1: 89
Thread-0: 90
Thread-0: 91
Thread-1: 90
Thread-0: 92
Thread-0: 93
Thread-1: 91
Thread-1: 92
Thread-0: 94
Thread-1: 93
Thread-0: 95
Thread-1: 94
Thread-0: 96
Thread-0: 97
Thread-0: 98
Thread-1: 95
Thread-0: 99
Thread-1: 96
Thread-1: 97
Thread-1: 98
Thread-1: 99
Thread[Thread-0,5,] join ~~~~~~
Thread[Thread-1,5,] join ~~~~~~
Thread[Thread-2,5,] join ~~~~~~
Thread[Thread-3,5,] join ~~~~~~
Thread count: 1

——————-

herongsendeMacBook-Air:160704-multithread RongSonHo$ java test2
Hello test2
This is bThread!
This is bThread!
This is bThread!
This is bThread!
Thread-1: 0
Thread-1: 1
Thread-1: 2
Thread-1: 3
Thread-1: 4
Thread-1: 5
Thread-0: 0
Thread-2: 0
Thread-0: 1
Thread-1: 6
Thread-3: 0
Thread-3: 1
Thread-1: 7
Thread-0: 2
Thread-2: 1
Thread-0: 3
Thread-0: 4
Thread-1: 8
Thread-3: 2
Thread-3: 3
Thread-1: 9
Thread-1: 10
Thread-0: 5
Thread-2: 2
Thread-2: 3
Thread-0: 6
Thread-0: 7
Thread-1: 11
Thread-3: 4
Thread-1: 12
Thread-0: 8
Thread-2: 4
Thread-0: 9
Thread-1: 13
Thread-3: 5
Thread-1: 14
Thread-0: 10
Thread-2: 5
Thread-2: 6
Thread-0: 11
Thread-1: 15
Thread-3: 6
Thread-1: 16
Thread-0: 12
Thread-2: 7
Thread-2: 8
Thread-0: 13
Thread-0: 14
Thread-1: 17
Thread-1: 18
Thread-3: 7
Thread-1: 19
Thread-1: 20
Thread-0: 15
Thread-0: 16
Thread-0: 17
Thread-0: 18
Thread-0: 19
Thread-0: 20
Thread-0: 21
Thread-0: 22
Thread-0: 23
Thread-0: 24
Thread-0: 25
Thread-0: 26
Thread-0: 27
Thread-2: 9
Thread-0: 28
Thread-0: 29
Thread-0: 30
Thread-0: 31
Thread-1: 21
Thread-1: 22
Thread-3: 8
Thread-1: 23
Thread-1: 24
Thread-0: 32
Thread-0: 33
Thread-0: 34
Thread-2: 10
Thread-0: 35
Thread-0: 36
Thread-0: 37
Thread-2: 11
Thread-2: 12
Thread-2: 13
Thread-2: 14
Thread-2: 15
Thread-2: 16
Thread-2: 17
Thread-2: 18
Thread-2: 19
Thread-2: 20
Thread-1: 25
Thread-1: 26
Thread-1: 27
Thread-1: 28
Thread-1: 29
Thread-1: 30
Thread-1: 31
Thread-1: 32
Thread-1: 33
Thread-1: 34
Thread-1: 35
Thread-1: 36
Thread-1: 37
Thread-1: 38
Thread-1: 39
Thread-1: 40
Thread-1: 41
Thread-3: 9
Thread-3: 10
Thread-3: 11
Thread-3: 12
Thread-1: 42
Thread-2: 21
Thread-0: 38
Thread-2: 22
Thread-1: 43
Thread-3: 13
Thread-1: 44
Thread-1: 45
Thread-1: 46
Thread-2: 23
Thread-0: 39
Thread-0: 40
Thread-0: 41
Thread-0: 42
Thread-0: 43
Thread-0: 44
Thread-0: 45
Thread-2: 24
Thread-1: 47
Thread-1: 48
Thread-3: 14
Thread-1: 49
Thread-2: 25
Thread-0: 46
Thread-2: 26
Thread-1: 50
Thread-3: 15
Thread-1: 51
Thread-2: 27
Thread-0: 47
Thread-2: 28
Thread-1: 52
Thread-1: 53
Thread-3: 16
Thread-1: 54
Thread-2: 29
Thread-0: 48
Thread-2: 30
Thread-1: 55
Thread-3: 17
Thread-1: 56
Thread-2: 31
Thread-0: 49
Thread-2: 32
Thread-1: 57
Thread-1: 58
Thread-3: 18
Thread-3: 19
Thread-1: 59
Thread-2: 33
Thread-0: 50
Thread-2: 34
Thread-1: 60
Thread-3: 20
Thread-1: 61
Thread-2: 35
Thread-0: 51
Thread-2: 36
Thread-1: 62
Thread-3: 21
Thread-1: 63
Thread-2: 37
Thread-0: 52
Thread-2: 38
Thread-1: 64
Thread-3: 22
Thread-1: 65
Thread-2: 39
Thread-0: 53
Thread-2: 40
Thread-1: 66
Thread-3: 23
Thread-1: 67
Thread-2: 41
Thread-2: 42
Thread-0: 54
Thread-2: 43
Thread-2: 44
Thread-1: 68
Thread-3: 24
Thread-1: 69
Thread-2: 45
Thread-0: 55
Thread-2: 46
Thread-1: 70
Thread-3: 25
Thread-3: 26
Thread-1: 71
Thread-2: 47
Thread-0: 56
Thread-2: 48
Thread-1: 72
Thread-3: 27
Thread-1: 73
Thread-2: 49
Thread-0: 57
Thread-2: 50
Thread-1: 74
Thread-3: 28
Thread-1: 75
Thread-2: 51
Thread-0: 58
Thread-2: 52
Thread-1: 76
Thread-3: 29
Thread-1: 77
Thread-2: 53
Thread-0: 59
Thread-2: 54
Thread-1: 78
Thread-3: 30
Thread-1: 79
Thread-2: 55
Thread-0: 60
Thread-2: 56
Thread-1: 80
Thread-3: 31
Thread-1: 81
Thread-2: 57
Thread-0: 61
Thread-2: 58
Thread-1: 82
Thread-1: 83
Thread-3: 32
Thread-1: 84
Thread-2: 59
Thread-2: 60
Thread-0: 62
Thread-2: 61
Thread-1: 85
Thread-3: 33
Thread-1: 86
Thread-2: 62
Thread-0: 63
Thread-2: 63
Thread-1: 87
Thread-3: 34
Thread-1: 88
Thread-2: 64
Thread-0: 64
Thread-2: 65
Thread-1: 89
Thread-3: 35
Thread-1: 90
Thread-2: 66
Thread-0: 65
Thread-2: 67
Thread-1: 91
Thread-3: 36
Thread-1: 92
Thread-2: 68
Thread-0: 66
Thread-2: 69
Thread-1: 93
Thread-3: 37
Thread-1: 94
Thread-2: 70
Thread-0: 67
Thread-2: 71
Thread-1: 95
Thread-3: 38
Thread-1: 96
Thread-2: 72
Thread-0: 68
Thread-2: 73
Thread-1: 97
Thread-3: 39
Thread-1: 98
Thread-2: 74
Thread-0: 69
Thread-2: 75
Thread-1: 99
Thread-3: 40
Thread-2: 76
Thread-2: 77
Thread-0: 70
Thread-2: 78
Thread-3: 41
Thread-2: 79
Thread-0: 71
Thread-2: 80
Thread-3: 42
Thread-2: 81
Thread-0: 72
Thread-2: 82
Thread-3: 43
Thread-2: 83
Thread-0: 73
Thread-2: 84
Thread-3: 44
Thread-2: 85
Thread-2: 86
Thread-2: 87
Thread-0: 74
Thread-2: 88
Thread-3: 45
Thread-3: 46
Thread-3: 47
Thread-2: 89
Thread-0: 75
Thread-2: 90
Thread-2: 91
Thread-2: 92
Thread-3: 48
Thread-2: 93
Thread-0: 76
Thread-0: 77
Thread-0: 78
Thread-2: 94
Thread-3: 49
Thread-2: 95
Thread-0: 79
Thread-0: 80
Thread-2: 96
Thread-2: 97
Thread-3: 50
Thread-2: 98
Thread-2: 99
Thread-0: 81
Thread-3: 51
Thread-0: 82
Thread-3: 52
Thread-0: 83
Thread-0: 84
Thread-0: 85
Thread-3: 53
Thread-0: 86
Thread-3: 54
Thread-0: 87
Thread-0: 88
Thread-0: 89
Thread-3: 55
Thread-0: 90
Thread-0: 91
Thread-3: 56
Thread-3: 57
Thread-0: 92
Thread-0: 93
Thread-3: 58
Thread-3: 59
Thread-3: 60
Thread-3: 61
Thread-3: 62
Thread-3: 63
Thread-3: 64
Thread-3: 65
Thread-3: 66
Thread-3: 67
Thread-3: 68
Thread-0: 94
Thread-3: 69
Thread-0: 95
Thread-0: 96
Thread-3: 70
Thread-0: 97
Thread-3: 71
Thread-0: 98
Thread-0: 99
Thread-3: 72
Thread-3: 73
Thread-3: 74
Thread-3: 75
Thread[Thread-0,5,] join ~~~~~~
Thread[Thread-1,5,] join ~~~~~~
Thread[Thread-2,5,] join ~~~~~~
Thread-3: 76
Thread-3: 77
Thread-3: 78
Thread-3: 79
Thread-3: 80
Thread-3: 81
Thread-3: 82
Thread-3: 83
Thread-3: 84
Thread-3: 85
Thread-3: 86
Thread-3: 87
Thread-3: 88
Thread-3: 89
Thread-3: 90
Thread-3: 91
Thread-3: 92
Thread-3: 93
Thread-3: 94
Thread-3: 95
Thread-3: 96
Thread-3: 97
Thread-3: 98
Thread-3: 99
Thread[Thread-3,5,] join ~~~~~~
Thread count: 1

結論:
依照main裡面thread的join順序,會有所不同
在main裡join的安排順序是thread1, thread2, thread3, thread4
main執行到thread1b.join();時,會一直等到thread1執行結束後,main才會繼續往下跑
thread1結束後,就依此類推到thread2,3,4
所以即使thread2,3,4比thread1先執行完了,也是要先等thread1執行完且也join了
才輪得到2,3,4來join
參考:
1. 執行緒的加入(join):http://openhome.cc/Gossip/JavaGossip-V2/JoinThread.htm

How to create multiThread in java

public class Thread extends Object implements Runnable

有兩種方法,繼承Thread or 實作Runnable

1.  繼承Thread:

class test1{
public static void main(String[] args){
System.out.println(“Hello”);
aThread thread1 = new aThread();
aThread thread2 = new aThread();

thread1.setName(“thread1”);
thread2.setName(“thread2”);
thread1.start();
thread2.start();
System.out.println(Thread.activeCount());
}
}


class aThread extends Thread{
public void run(){
for(int i=0; i<100; i++){
String threadName = Thread.currentThread().getName();
System.out.println(threadName + “: “ + i);
}
}

}

執行結果:
herongsendeMacBook-Air:160704-multithread RongSonHo$ time java test1
Hello
3
thread2: 0
thread1: 0
thread1: 1
thread2: 1
thread1: 2
thread1: 3
thread2: 2
thread2: 3
thread1: 4
thread2: 4
thread1: 5
thread1: 6
thread1: 7
thread1: 8
thread2: 5
thread1: 9
thread2: 6
thread1: 10
thread2: 7
thread1: 11
thread2: 8
thread1: 12
thread2: 9
thread1: 13
thread2: 10
thread1: 14
thread2: 11
thread1: 15
thread2: 12
thread1: 16
thread2: 13
thread1: 17
thread2: 14
thread1: 18
thread2: 15
thread1: 19
thread2: 16
thread1: 20
thread2: 17
thread1: 21
thread2: 18
thread1: 22
thread2: 19
thread1: 23
thread2: 20
thread1: 24
thread2: 21
thread1: 25
thread2: 22
thread1: 26
thread2: 23
thread1: 27
thread2: 24
thread2: 25
thread1: 28
thread2: 26
thread1: 29
thread2: 27
thread1: 30
thread2: 28
thread1: 31
thread2: 29
thread1: 32
thread1: 33
thread1: 34
thread2: 30
thread1: 35
thread1: 36
thread2: 31
thread2: 32
thread1: 37
thread2: 33
thread1: 38
thread1: 39
thread2: 34
thread1: 40
thread2: 35
thread1: 41
thread2: 36
thread1: 42
thread2: 37
thread1: 43
thread2: 38
thread1: 44
thread2: 39
thread1: 45
thread2: 40
thread1: 46
thread2: 41
thread1: 47
thread2: 42
thread1: 48
thread2: 43
thread1: 49
thread2: 44
thread1: 50
thread2: 45
thread1: 51
thread2: 46
thread1: 52
thread2: 47
thread1: 53
thread2: 48
thread1: 54
thread2: 49
thread1: 55
thread2: 50
thread1: 56
thread2: 51
thread1: 57
thread2: 52
thread1: 58
thread2: 53
thread1: 59
thread1: 60
thread2: 54
thread1: 61
thread2: 55
thread1: 62
thread2: 56
thread1: 63
thread2: 57
thread1: 64
thread2: 58
thread1: 65
thread2: 59
thread2: 60
thread1: 66
thread1: 67
thread2: 61
thread1: 68
thread2: 62
thread1: 69
thread2: 63
thread1: 70
thread2: 64
thread1: 71
thread2: 65
thread1: 72
thread2: 66
thread1: 73
thread2: 67
thread1: 74
thread2: 68
thread1: 75
thread2: 69
thread1: 76
thread2: 70
thread1: 77
thread2: 71
thread1: 78
thread2: 72
thread1: 79
thread2: 73
thread1: 80
thread2: 74
thread1: 81
thread2: 75
thread1: 82
thread1: 83
thread2: 76
thread1: 84
thread2: 77
thread1: 85
thread2: 78
thread2: 79
thread1: 86
thread2: 80
thread1: 87
thread2: 81
thread1: 88
thread2: 82
thread1: 89
thread2: 83
thread1: 90
thread1: 91
thread2: 84
thread2: 85
thread1: 92
thread2: 86
thread2: 87
thread1: 93
thread2: 88
thread1: 94
thread2: 89
thread2: 90
thread1: 95
thread2: 91
thread2: 92
thread1: 96
thread2: 93
thread1: 97
thread2: 94
thread1: 98
thread2: 95
thread1: 99
thread2: 96
thread2: 97
thread2: 98
thread2: 99

real 0m0.647s
user 0m0.164s
sys 0m0.153s

2. 實作Runnable

class test2{
public static void main(String[] args){
System.out.println(“Hello test2”);
bThread thread1 = new bThread();
bThread thread2 = new bThread();
bThread thread3 = new bThread();
bThread thread4 = new bThread();
Thread thread1b = new Thread(thread1, “thread1”);
Thread thread2b = new Thread(thread2, “thread2”);
Thread thread3b = new Thread(thread3, “thread3”);
Thread thread4b = new Thread(thread4, “thread4”);

thread1b.start();
thread2b.start();
thread3b.start();
thread4b.start();
System.out.println(“Thread count: “+ Thread.activeCount());
}
}

class bThread implements Runnable{
public void run(){
for(int i=0; i<100; i++){
String threadName = Thread.currentThread().getName();
System.out.println(threadName+ “: “+ i);
}
}
public bThread(){
System.out.println(“This is bThread!”);
}

}

執行結果:
herongsendeMacBook-Air:160704-multithread RongSonHo$ time java test2
Hello test2
This is bThread!
This is bThread!
This is bThread!
This is bThread!
Thread-1: 0
Thread count: 5
Thread-3: 0
Thread-2: 0
Thread-0: 0
Thread-2: 1
Thread-3: 1
Thread-1: 1
Thread-3: 2
Thread-2: 2
Thread-0: 1
Thread-2: 3
Thread-3: 3
Thread-1: 2
Thread-3: 4
Thread-2: 4
Thread-0: 2
Thread-2: 5
Thread-3: 5
Thread-1: 3
Thread-3: 6
Thread-2: 6
Thread-2: 7
Thread-0: 3
Thread-2: 8
Thread-3: 7
Thread-1: 4
Thread-3: 8
Thread-2: 9
Thread-0: 4
Thread-2: 10
Thread-3: 9
Thread-1: 5
Thread-3: 10
Thread-2: 11
Thread-0: 5
Thread-2: 12
Thread-3: 11
Thread-1: 6
Thread-3: 12
Thread-2: 13
Thread-0: 6
Thread-2: 14
Thread-2: 15
Thread-3: 13
Thread-1: 7
Thread-3: 14
Thread-2: 16
Thread-0: 7
Thread-2: 17
Thread-3: 15
Thread-1: 8
Thread-3: 16
Thread-2: 18
Thread-0: 8
Thread-2: 19
Thread-3: 17
Thread-1: 9
Thread-3: 18
Thread-2: 20
Thread-0: 9
Thread-2: 21
Thread-3: 19
Thread-1: 10
Thread-3: 20
Thread-2: 22
Thread-0: 10
Thread-2: 23
Thread-3: 21
Thread-1: 11
Thread-3: 22
Thread-2: 24
Thread-0: 11
Thread-2: 25
Thread-3: 23
Thread-1: 12
Thread-3: 24
Thread-2: 26
Thread-0: 12
Thread-2: 27
Thread-3: 25
Thread-1: 13
Thread-3: 26
Thread-2: 28
Thread-0: 13
Thread-2: 29
Thread-3: 27
Thread-1: 14
Thread-3: 28
Thread-2: 30
Thread-0: 14
Thread-2: 31
Thread-3: 29
Thread-1: 15
Thread-3: 30
Thread-2: 32
Thread-0: 15
Thread-2: 33
Thread-3: 31
Thread-1: 16
Thread-3: 32
Thread-3: 33
Thread-3: 34
Thread-2: 34
Thread-0: 16
Thread-0: 17
Thread-2: 35
Thread-3: 35
Thread-1: 17
Thread-3: 36
Thread-2: 36
Thread-0: 18
Thread-2: 37
Thread-3: 37
Thread-3: 38
Thread-3: 39
Thread-1: 18
Thread-3: 40
Thread-2: 38
Thread-0: 19
Thread-2: 39
Thread-3: 41
Thread-1: 19
Thread-3: 42
Thread-2: 40
Thread-2: 41
Thread-0: 20
Thread-0: 21
Thread-2: 42
Thread-3: 43
Thread-1: 20
Thread-3: 44
Thread-2: 43
Thread-0: 22
Thread-2: 44
Thread-3: 45
Thread-1: 21
Thread-3: 46
Thread-2: 45
Thread-0: 23
Thread-2: 46
Thread-3: 47
Thread-1: 22
Thread-3: 48
Thread-2: 47
Thread-0: 24
Thread-2: 48
Thread-3: 49
Thread-1: 23
Thread-3: 50
Thread-2: 49
Thread-0: 25
Thread-2: 50
Thread-3: 51
Thread-1: 24
Thread-3: 52
Thread-2: 51
Thread-0: 26
Thread-2: 52
Thread-3: 53
Thread-1: 25
Thread-3: 54
Thread-2: 53
Thread-0: 27
Thread-2: 54
Thread-3: 55
Thread-1: 26
Thread-3: 56
Thread-2: 55
Thread-0: 28
Thread-2: 56
Thread-3: 57
Thread-3: 58
Thread-1: 27
Thread-3: 59
Thread-2: 57
Thread-0: 29
Thread-2: 58
Thread-3: 60
Thread-1: 28
Thread-3: 61
Thread-2: 59
Thread-0: 30
Thread-0: 31
Thread-2: 60
Thread-3: 62
Thread-1: 29
Thread-3: 63
Thread-2: 61
Thread-2: 62
Thread-0: 32
Thread-0: 33
Thread-2: 63
Thread-2: 64
Thread-3: 64
Thread-1: 30
Thread-3: 65
Thread-2: 65
Thread-0: 34
Thread-2: 66
Thread-3: 66
Thread-1: 31
Thread-3: 67
Thread-2: 67
Thread-2: 68
Thread-0: 35
Thread-2: 69
Thread-3: 68
Thread-1: 32
Thread-1: 33
Thread-1: 34
Thread-3: 69
Thread-2: 70
Thread-0: 36
Thread-2: 71
Thread-3: 70
Thread-3: 71
Thread-1: 35
Thread-3: 72
Thread-2: 72
Thread-0: 37
Thread-2: 73
Thread-3: 73
Thread-1: 36
Thread-3: 74
Thread-2: 74
Thread-2: 75
Thread-0: 38
Thread-2: 76
Thread-3: 75
Thread-1: 37
Thread-3: 76
Thread-2: 77
Thread-0: 39
Thread-2: 78
Thread-3: 77
Thread-1: 38
Thread-3: 78
Thread-2: 79
Thread-0: 40
Thread-2: 80
Thread-3: 79
Thread-1: 39
Thread-3: 80
Thread-3: 81
Thread-3: 82
Thread-2: 81
Thread-0: 41
Thread-2: 82
Thread-3: 83
Thread-1: 40
Thread-3: 84
Thread-2: 83
Thread-0: 42
Thread-2: 84
Thread-3: 85
Thread-1: 41
Thread-3: 86
Thread-2: 85
Thread-0: 43
Thread-2: 86
Thread-3: 87
Thread-1: 42
Thread-1: 43
Thread-3: 88
Thread-2: 87
Thread-0: 44
Thread-2: 88
Thread-3: 89
Thread-1: 44
Thread-3: 90
Thread-2: 89
Thread-0: 45
Thread-2: 90
Thread-3: 91
Thread-3: 92
Thread-1: 45
Thread-3: 93
Thread-2: 91
Thread-0: 46
Thread-2: 92
Thread-3: 94
Thread-1: 46
Thread-3: 95
Thread-2: 93
Thread-0: 47
Thread-2: 94
Thread-3: 96
Thread-1: 47
Thread-3: 97
Thread-2: 95
Thread-0: 48
Thread-2: 96
Thread-3: 98
Thread-1: 48
Thread-3: 99
Thread-2: 97
Thread-0: 49
Thread-2: 98
Thread-2: 99
Thread-1: 49
Thread-0: 50
Thread-1: 50
Thread-1: 51
Thread-0: 51
Thread-1: 52
Thread-0: 52
Thread-1: 53
Thread-0: 53
Thread-1: 54
Thread-0: 54
Thread-1: 55
Thread-0: 55
Thread-1: 56
Thread-0: 56
Thread-1: 57
Thread-0: 57
Thread-1: 58
Thread-0: 58
Thread-1: 59
Thread-0: 59
Thread-1: 60
Thread-0: 60
Thread-1: 61
Thread-0: 61
Thread-1: 62
Thread-0: 62
Thread-0: 63
Thread-1: 63
Thread-0: 64
Thread-1: 64
Thread-0: 65
Thread-0: 66
Thread-1: 65
Thread-0: 67
Thread-1: 66
Thread-0: 68
Thread-1: 67
Thread-0: 69
Thread-1: 68
Thread-0: 70
Thread-1: 69
Thread-1: 70
Thread-1: 71
Thread-1: 72
Thread-0: 71
Thread-1: 73
Thread-0: 72
Thread-1: 74
Thread-0: 73
Thread-1: 75
Thread-0: 74
Thread-1: 76
Thread-1: 77
Thread-0: 75
Thread-1: 78
Thread-0: 76
Thread-1: 79
Thread-0: 77
Thread-1: 80
Thread-1: 81
Thread-0: 78
Thread-1: 82
Thread-0: 79
Thread-0: 80
Thread-0: 81
Thread-1: 83
Thread-0: 82
Thread-1: 84
Thread-1: 85
Thread-0: 83
Thread-0: 84
Thread-1: 86
Thread-0: 85
Thread-0: 86
Thread-1: 87
Thread-0: 87
Thread-1: 88
Thread-0: 88
Thread-0: 89
Thread-1: 89
Thread-0: 90
Thread-1: 90
Thread-0: 91
Thread-1: 91
Thread-0: 92
Thread-1: 92
Thread-0: 93
Thread-1: 93
Thread-1: 94
Thread-0: 94
Thread-1: 95
Thread-1: 96
Thread-1: 97
Thread-0: 95
Thread-1: 98
Thread-1: 99
Thread-0: 96
Thread-0: 97
Thread-0: 98
Thread-0: 99

real 0m0.457s
user 0m0.179s
sys 0m0.105s

ps. 預設的Thread Name: Thread-0…

Thread的Constructor:
1. Thread() 分派新的執行緒  -> test1.java
2. Thread(String name)3. Thread(Runnable target) 傳入一個Runnable物件,並分派新的執行緒 -> test2.java
4. Thread(Runnable target, String name) 

常用方法:
1. String getName() 取得名稱
2. int getPriority() 取得優先權
3. void setPriority() 可設參數1~10或MIN_PRIORITY=1、NORM_PRIORITY=5、MAX_PRIORITY=10
4. void start 將執行丟入Runnable pool中,等待系統run()呼叫
5. void run() 開始執行工作(由系統自動呼叫,非程式設計師撰寫)
6. static void yield() 將目前執行緒先行暫停,重新排程,讓與其他執行緒執行
7. static void sleep(long millis) 暫停目前執行緒,需在try-catch中呼叫,會丟出throws InterruptedException
8. void join() / void join(long millis) 用於調整執行緒執行順序,先暫停目前執行緒,而指定其他執行緒加入執行工作,執行完畢後才回復,或可設定執行時間,需在try-catch中呼叫,會丟出throws InterruptedException
9. void stop() 停止正在執行的執行緒 (不建議使用,易造成死結)
10. void suspend() 停止正在執行的執行緒 (不建議使用,易造成死結)
11. void destroy() 毀掉執行緒
12. boolean isAlive() 取得目前執行緒狀態
13. void wait() 讓執行緒進入等待狀態
14. void notify() 喚醒一個等待中的執行緒,若有多個執行緒,則由JVM決定
15. void notifyAll() 喚醒所有等待中的執行緒





參考:
1. MEMO 123: JAVA筆記-Thread 多執行緒基本撰寫範例與常用函式 :http://jhengjyun.blogspot.tw/2011/04/1.html