[問題] 使用array製作Thread問題
各位先進們
小弟只是自學自己摸索的
如果有甚麼不懂的地方請不要鞭太大力
小弟的問題如下
現在在寫一個東西
假設我有三個執行緒
然後我用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();
}
再麻煩各位前輩賜教-.-......
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.9.131.198
※ 文章網址: https://www.ptt.cc/bbs/java/M.1500622113.A.ADB.html
※ 編輯: baseball464 (101.9.131.198), 07/21/2017 15:30:43
→
07/21 15:44, , 1F
07/21 15:44, 1F
→
07/21 15:45, , 2F
07/21 15:45, 2F
→
07/21 15:46, , 3F
07/21 15:46, 3F
→
07/21 15:48, , 4F
07/21 15:48, 4F
我的確認為他是右邊帶入左邊了-.-.....
※ 編輯: baseball464 (101.9.131.198), 07/21/2017 15:52:27
→
07/21 15:55, , 5F
07/21 15:55, 5F
→
07/21 15:56, , 6F
07/21 15:56, 6F
→
07/21 15:56, , 7F
07/21 15:56, 7F
→
07/21 15:56, , 8F
07/21 15:56, 8F
→
07/21 15:57, , 9F
07/21 15:57, 9F
java 近期熱門文章
PTT數位生活區 即時熱門文章