我想創造在同一文件中的Java服務器和客戶端...因爲這是我的項目的結構Java服務器套接字
服務器 - >客戶端/服務器---->客戶端
SERVER和CLIENT部分的編碼非常簡單,但是當爲CLIENT/SERVER部分創建時我遇到問題..我的代碼只能運行CLIENT部分而不啓動SERVER部分。因爲我的線程運行()代碼。
package com.main.datadistributor;
import java.io.IOException;
import java.net.ServerSocket;
public class Slave {
public static void main(String args[]) throws IOException{
Config cfg = new Config("Slave");
String MasterServerIP = cfg.getProperty("MasterServerIP");
String MasterServerPort = cfg.getProperty("MasterServerPort");
String SlaveServerPort = cfg.getProperty("SlaveServerPort");
Client client = new Client(MasterServerIP,Integer.parseInt(MasterServerPort),"SLAVEONE");
client.run();
int numClient = 0;
ServerSocket listener = new ServerSocket(Integer.parseInt(SlaveServerPort));
System.out.println("Server starts running");
try{
while(true){
new Server(listener.accept(), numClient++, Integer.parseInt(SlaveServerPort), "SLAVESERVER").start();
}
} finally {
listener.close();
}
}
}
從上面的代碼,我有問題只執行client.run()和代碼只是停在那裏不前進到在try部分下執行新的服務器
http://docs.oracle.com/javase/tutorial/essential/concurrency/index.html – 2012-02-18 04:56:04
什麼是client.run(); ?爲什麼不是這個東西的線程呢? – 2012-02-18 04:58:49