0% found this document useful (0 votes)
5 views

Sockets MultiThread

Uploaded by

mohammednapoli0
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

Sockets MultiThread

Uploaded by

mohammednapoli0
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

package thrServ;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.ServerSocket;
import java.net.Socket;

public class ServeurMultiThread extends Thread {

private int Numero=0;

Socket socket = null;

InputStreamReader inpStrReader = null;


OutputStreamWriter outStrWriter =null;

BufferedReader buffReader = null;


BufferedWriter buffWriter = null;

ServerSocket servSocket =null;

public void run() {

try {
servSocket = new ServerSocket(1235);
System.out.println("Ecoute sur le Port ...");

while(true) {
System.out.println("En Attente de Nouveaux Clients");
socket=servSocket.accept();
++Numero;
System.out.println("Client [" +Numero+ "] Connecté");

Echange ech=new Echange(socket,Numero);


ech.start();
}
} catch (IOException e) {e.printStackTrace();}

} // RUN Serveur Multi Thread

///////////////////////////////////

public static void main(String[] args) {

ServeurMultiThread S1= new ServeurMultiThread();


S1.start();

} // Main Serveur Multi Thread

} // Class
package thrServ;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.Socket;

public class Echange extends Thread {

public Socket sClient;


private int numClient;

public Echange(Socket socketClient,int monNumero) {


super();
this.sClient=socketClient;
this.numClient=monNumero;
}

InputStreamReader inpStrReader=null;
BufferedReader buffReader=null;

OutputStreamWriter outStrWriter=null;
BufferedWriter buffWriter=null;

public void run() {

try {
inpStrReader = new InputStreamReader(sClient.getInputStream());

buffReader =new BufferedReader(inpStrReader);

outStrWriter = new OutputStreamWriter(sClient.getOutputStream());


buffWriter = new BufferedWriter(outStrWriter);

String msgFromClient;

while(true) {
msgFromClient = buffReader.readLine();

System.out.println("Client Numero("+numClient + ") sent : "+msgFromClient);

buffWriter.write("Message Recu :"+msgFromClient);


buffWriter.newLine();
buffWriter.flush();

if(msgFromClient.equalsIgnoreCase("Fin") ) {
System.out.println("Fin du Client["+numClient+"]");
break; }
} // WHILE

sClient.close();
inpStrReader.close();
outStrWriter.close();
buffReader.close();
buffWriter.close();

} catch (IOException e) { e.printStackTrace(); }

} // RUN
} // class
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.Socket;
import java.util.Scanner;

public class Client {

public static void main(String[] args) throws InterruptedException {


Socket socket = null;

InputStreamReader inpStrReader = null;


OutputStreamWriter outStrWriter =null;

BufferedReader buffReader = null;


BufferedWriter buffWriter = null;

try {
socket = new Socket("localhost",1235);

inpStrReader=new InputStreamReader(socket.getInputStream());
buffReader = new BufferedReader(inpStrReader);

outStrWriter = new OutputStreamWriter(socket.getOutputStream());


buffWriter = new BufferedWriter(outStrWriter);

Scanner Clavier = new Scanner(System.in);


String msgToSend;

while(true) {
msgToSend=Clavier.nextLine();
int nbrToSend=0;

if( !msgToSend.equalsIgnoreCase("FIN") )
{
nbrToSend= Integer.parseInt(msgToSend);

for(int i=0;i<nbrToSend;i++) {
Thread.sleep(1000);
buffWriter.write(String.valueOf(i));
buffWriter.newLine();
buffWriter.flush();
System.out.println("Reponse Serveur :"+ buffReader.readLine());
}
}
else { buffWriter.write(msgToSend);
buffWriter.newLine();
buffWriter.flush();
Clavier.close();
break;}
}// WHILE TRUE
} catch(IOException e) {e.printStackTrace();}
finally {
try{
if(socket!=null) socket.close();
if(inpStrReader!=null) inpStrReader.close();
if(buffReader!=null) buffReader.close();
if(outStrWriter!=null) outStrWriter.close();
if(buffWriter!=null) buffWriter.close();
} catch(IOException e) {e.printStackTrace();}
}
}// MAIN
}// Class

You might also like