//package mtrn;
import java.io.*;
import java.net.Socket;
import java.net.UnknownHostException;
public class ClientThreadedRandomNumberApplication1 {
String randomNumber;
String Sum;
Socket clientsocket = null;
long timeval1=0;
long timeval2=0;double Time;
int sum = 0;
public void My_main() {
String Server_IP = "127.0.0.1"; //Server IP
int Port = 2000; //Server Port listening to thread 1
try {
// Construct client's socket
clientsocket = new Socket(Server_IP, Port);
System.out.println("Server Port: "+clientsocket.getPort());
System.out.println("Now run client 2");
// the buffer used for reading strings from the socket
BufferedReader buf = null;
buf = new BufferedReader(new InputStreamReader(clientsocket. getInputStream())); //buf needed later on
while (true){
if (buf.readLine().equals("GO")){ // Receive "GO" command from the server
break;
}
}
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
timeval1 = System.currentTimeMillis();
for (int i=0;i<10000;i++){
randomNumber = getRandomNumberFromServer();
}
timeval2=System.currentTimeMillis();
//Time=(timeval2-timeval1)/1000;
Time=(timeval2-timeval1);
System.out.println("Sum: " + sum + ", Time Elapsed: " + Time);
}
//---------------------------------------------------------------------------
String getRandomNumberFromServer(){
try {
BufferedReader buf = null;
PrintWriter out = null;
// the buffer used for writing/reading strings from/to the socket
buf = new BufferedReader(new InputStreamReader(clientsocket. getInputStream()));
out = new PrintWriter(clientsocket.getOutputStream(), true);
out.println("1"); // Send "1" to server to request random number
randomNumber=buf.readLine(); // read random number from server
sum=sum+Integer.parseInt(randomNumber.substring(0,1));
Sum=String.valueOf(sum);
}
catch (Exception e){
System.err.println("No server");
}
return randomNumber;
}
public static void main(String[] args) {
ClientThreadedRandomNumberApplication1 ctia = new ClientThreadedRandomNumberApplication1();
ctia.My_main();
}
}