j'ai essaye de le lancer mon thread comme ci_dessous mais ca ne marche pas

Clients thread = new Clients(client);
thread.start();

ca ne se lance pas parcontre quand je fais

Clients c = new Clients(client);

et que le start est dans le constructeur ca fonctionne (le run se lance).

mon code ici

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
 
public class locSrv {	
 
	public static void main(String[] args) {
 
		InetAddress iaddr = null;;
		ServerSocket serveur = null;
	    try{
	    	serveur = new ServerSocket(constantes.port, constantes.MAX_PENDING);
	    	serveur.setReuseAddress(true);
	        System.out.println("Serveur démarré sur le port " + constantes.port);
 
	        // Ecoute infinie des requêtes des clients
	        while(true){
	        	System.out.println("Attente d'un nouveau client");
	        	Socket client = serveur.accept();
	        	client.setReuseAddress(true);
	        	client.setSoLinger(true, constantes.LINGER_TIME);	        	
	        	iaddr = client.getInetAddress() ; 
	        	System.out.println("Connexion client détecté à partir de " + iaddr.getHostAddress());	            
	            kProtoManager kp = new kProtoManager(client); <== c'est le thread (comme ceci il se lance bien)	            
	        }
	    }
	    catch (Exception e){System.err.println(e);}
	    finally{
	    	try{
	    		System.out.println("Serveur arrêter");
	    		if (serveur != null) serveur.close();
	        }
	        catch (Exception e){System.err.println(e);}
	    }
	}
avez-vous une idee ?

Merci de votre aide.