Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Socket java

  1. #1

    Socket java

    come faccio ad assegnare al socket una porta inesistente???
    Quando faccio una semplice sleep() su un thread per quando mi si addormenta il thread??
    grazie

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Socket java

    Originariamente inviato da topolino
    come faccio ad assegnare al socket una porta inesistente???
    Che vuol dire "inesistente"?? Tutte le porte nel range 0 to 65535 (una porta è rappresentata su 16 bit) .... esistono!

    La questione è che se si vuole fare il bind in locale su una porta, essa non deve essere già in uso. Se invece ci si vuole collegare ad una porta, su essa deve esserci qualcuno in "ascolto".
    Insomma, la comunicazione è tra host/porta <---> host/porta.

    Originariamente inviato da topolino
    Quando faccio una semplice sleep() su un thread per quando mi si addormenta il thread??
    Come minimo per il numero di millisecondi specificati alla sleep().
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3

    socket

    socket.bind(null);cosa succede?

    Per la sleep ok..
    Perche' è un metodo che ho personalizzato quindi è li che definisco il tempo.

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: socket

    Originariamente inviato da topolino
    socket.bind(null);cosa succede?
    Dalla documentazione: If the address is null, then the system will pick up an ephemeral port and a valid local address to bind the socket.

    Generalmente quando si deve solo "uscire" per collegarsi ad un altro host/porta, la porta locale sui cui il socket fa il bind la sceglie tipicamente il sistema, che è la cosa migliore/preferibile.

    Per dirlo con un esempio, se fai:

    ... new Socket("www.google.com", 80);

    L'host/porta remota la imponi ovviamente, è chiaro, tu. L'host/porta locale non è fondamentale/importante da imporre esplicitamente (a meno di situazioni davvero particolari).
    L'indirizzo locale sarà quello di una interfaccia di rete da cui si può "uscire" per raggiungere quel sito. Se sei collegato ad internet tramite una scheda Wi-Fi, l'indirizzo "locale" sarà quello assegnato a questa scheda. La porta, come detto sopra, la sceglie "a caso" il sistema.

    In genere appunto non importa tanto quale è la porta locale .... purché se ne scelga una libera da cui "uscire".
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.