Java - problema con los hilos

 
Vista:
Imágen de perfil de Angel Manuel

problema con los hilos

Publicado por Angel Manuel (17 intervenciones) el 01/03/2015 11:31:25
No entiendo porque no me funciona el codigo, se queda pillado en el primer puerto y no pasa a los demas.Necesito que me habra todos los puertos del 6881 al 6999 y se quede a la espera de una conexion

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
33
34
35
36
37
import java.util.*;
import java.lang.*;
import java.io.*;
import java.net.*;
import java.util.logging.Level;
import java.util.logging.Logger;
 
public class HS extends Thread {
 
    //Constructor:
    public HS(ServerSocket server, int puerto){
        Socket SO=new Socket();
        try {
            System.out.println("escuchando en el puerto: "+puerto);
            SO=server.accept();
        } catch (IOException ex) {
            System.out.println("No se puede escuchar el puerto: "+puerto);
        }
    }//fin constructor
 
    public void run(){
 
    }//fin run
 
    public static void main(String[] args){
        for(int i=6881;i<=6999;i++){
            try {
                ServerSocket SS=new ServerSocket(i);
                System.out.println("Servidor creado para el puerto: "+i);
                HS hilo=new HS(SS,i);
                hilo.start();
            } catch (IOException ex) {
                System.out.println("No se puede escuchar en puerto: "+i);
            }
        }
    }//fin main   
}//fin class

Si no se hace asi, por favor ponedme el codigo de como tengo que hacerlo. LLevo meses con lo mismo. Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 349
Bronce
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

problema con los hilos

Publicado por Andrés (340 intervenciones) el 06/03/2015 18:33:33
Ya casi lo tenias ;). Te anexo la solución. Saludos.

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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
import java.util.*;
import java.lang.*;
import java.io.*;
import java.net.*;
import java.util.logging.Level;
import java.util.logging.Logger;
 
public class HS extends Thread {
 
     private ServerSocket server;
	 private Integer port;
 
    public HS(ServerSocket server, int port){
 
	   this.server=server;
	   this.port=port;
 
    }
 
    public void run(){
 
        Socket SO = new Socket();
 
		try {
 
			System.out.println("escuchando en el puerto: "+port);
 
            SO=server.accept(); //Aqui se bloquea y se queda a la escucha.
 
			//La siguiente linea se ejecuta cuando "Llegue algo"
			System.out.println("Hello in port: "+port);
 
        } catch (IOException ex) {
 
            System.out.println("No se puede escuchar el puerto: "+port);
 
        }
 
    }
 
    public static void main(String[] args){
 
        for(int port=6881;port<=6999;port++){
 
			try {
 
                HS hilo=new HS(new ServerSocket(port),port);
                hilo.start();
 
            } catch (IOException ex) {
 
                System.out.println("No se puede escuchar en puerto: "+port);
 
            }
 
        }
 
    }
 
}

img
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar