Pagina 3 di 4 primaprima 1 2 3 4 ultimoultimo
Visualizzazione dei risultati da 21 a 30 su 35

Discussione: Java Client Server

  1. #21
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    305
    Avrei pensato di creare un singleton per clientConnection, e utilizzare l'istanza attraverso degli swingWorker che ne pensi? In modo tale da utilizzare i metodi della classe in ogni istanza a seconda delle esigenze

  2. #22
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    305
    Supponendo di avere un server multithread, come posso terminare tutte le connessione istanziate?

  3. #23
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da linux_r Visualizza il messaggio
    Supponendo di avere un server multithread, come posso terminare tutte le connessione istanziate?
    Puoi chiudere tutti i Socket verso i client attivi in quel momento sul server.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  4. #24
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    305
    ok , ma ogni thread, chiude il suo socket o utilizzo il thread che accetta le connessioni?

  5. #25
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da linux_r Visualizza il messaggio
    ok , ma ogni thread, chiude il suo socket o utilizzo il thread che accetta le connessioni?
    Il ServerSocket comunque non centra, cioè se lo chiudi, non chiude gli altri Socket. Se vuoi terminare dal server tutte le connessioni con i client, devi chiudere tutti i Socket.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  6. #26
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    305
    ok questo mi è chiaro pero io ho una classe dove c'è il server che accetta e una classe che implementa il thread-server che contatta col client. Adesso poichè con l'accept posso salvarmi tutti i socket , nella classe dove si trova il serversocket, volevo chiederti se chiudere i socket dalle classe dove si trova il server che accetta le richieste o magari faccio chiudere ad ogni thread il proprio socket.

  7. #27
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    305
    Il fatto è che chiudo il server da interfaccia grafica, come faccio a far completare ai thread le attuali operazioni prima di chiudere tutto?

  8. #28
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    305
    E se utilizzassi un ThreadGroup e invocassi poi il metodo interrupt? i thread finirebbero le operazioni di I/O?

  9. #29
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da linux_r Visualizza il messaggio
    E se utilizzassi un ThreadGroup e invocassi poi il metodo interrupt? i thread finirebbero le operazioni di I/O?
    Innanzitutto interrupt su ThreadGroup fa nient'altro che iterare sui suoi Thread invocandoci sopra interrupt e poi invoca interrupt pure sui suoi sotto-gruppi (se ci sono, che a loro volta faranno idem). Sarebbe certamente possibile ma forse un po' superfluo. I Thread dopotutto li crei tu, quindi potresti benissimo tenerli in una collezione.

    A parte questo, il punto di interrupt() è un altro. La terminazione di un thread deve essere fatta in maniera "cooperativa", ovvero il lavoro del thread deve cooperare affinché la terminazione possa davvero avvenire e oltretutto in maniera "gradevole" rispetto al lavoro che stava svolgendo.
    Invocare interrupt() non fa terminare di brutto il run() del thread ... setta solo un flag e basta. Ci sono dei casi particolari (documentati nel javadoc di interrupt) per cui se il thread in quel momento è bloccato in una delle operazioni "bloccanti" documentate, allora il metodo esce con una eccezione. Ma anche qui non è detto che il run() termini per forza ... dipende cosa si fa e si cattura dentro il run().
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  10. #30
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    305
    Praticamente ho questo problema , poichè questo è un server multithread, quando uno dei thread termina lo devo comunicar al server in ascolto, che tiene un array list di tutti gli oggetti worker,ovvero oggetti di una classe che serve il client, in modo tale che il server in ascolto possa rimuovere i thread terminati dall'array list.

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 © 2026 vBulletin Solutions, Inc. All rights reserved.