各位先進們
小弟只是自學自己摸索的
如果有甚麼不懂的地方請不要鞭太大力
小弟的問題如下
現在在寫一個東西
假設我有三個執行緒
然後我用Array的方式去新增他
static void ListenForTCP (String name){
String Tcp_Data[][]={{"192.168.8.1","4000"},{"192.168.8.1","4001"},{"192.168.8.1","4002"},{"192.168.8.1","4003"}};
Thread Thread_Array[]={A_Thread,B_Thread,C_Thread,D_Thread };
Socket Socket_Array[]={A_Socket,B_ClientSocket,C_ClientSocket,D_ClientSocket};
for(int i=0 ;i<Thread_Array.length;i++){
int y=i;
Thread_Array[i]= new Thread(new Runnable() {
public void run() {
tpcipConnect(Socket_Array[y],Tcp_Data[y][0],Integer.valueOf(Tcp_Data[y][1]));
//請問一下為什麼這裡沒辦法直接帶入i
}
});
Thread_Array[i].start();
}
}
static void CheckThread (){
Thread CheckListenForConnext = new Thread(new Runnable() {
public void run() {
while(true){
try {
Thread.sleep(1000*10);
System.err.println("Do");
System.out.println(A_Thread.isAlive());
System.out.println(B_Thread.isAlive());
System.out.println(C_Thread.isAlive());
System.out.println(D_Thread.isAlive());
//在這裡要做判斷斷線重連
//但是會一直跳錯誤
//若把上面用array跑的執行緒
//拆成4個function就可以正常執行
//不知道是哪個環節有問題?!!!
} catch (InterruptedException e) {
}
}
}
});
CheckThread.start();
}
再麻煩各位前輩賜教-.-......