Ciao a tutti, sono alle prese con un progetto in java e non so come risolvere un problema:P
Ho un thread daemon che funge da server e vari client, il server deve tenere un file log e terminare quando tutti i client si sono disconnessi.
Il problema è semplice vorrei poter richiamare la funzione di chiusura file prima che il server termine in modo da farli chiudere il file che ha scritto, altrimenti se non lo chiudo quando vadoa vedere il file questo è vuoto:P
Come posso fare?
Vi posto il pezzo di codice cosi forse si capisce meglio
codice:
try {
FileLog = new Log ("Server");
while (true){
if (freeRes == 0) {
FileLog.WriteFile("[SERVER] Resources available: 0");
int[] OpType = {RELEASE1, RELEASE2};
e.accept(OpType, 2);
}
else if (freeRes == 1){
FileLog.WriteFile("[SERVER] Resources available: 1\n");
int []OpType={REQUEST1, RELEASE1, RELEASE2};
e.accept(OpType, 3);
}
else {
FileLog.WriteFile("[SERVER] Resources available: 2 or more\n");
int[] OpType = {REQUEST1, REQUEST2, RELEASE1, RELEASE2};
e.accept(OpType, 4);
}
}
}
catch(Exception ex) {
System.out.printf("\n[SERVER] Something went wrong " + ex.getMessage() + "\n");
System.exit(1);
}
try{
FileLog.close();
}
catch(Exception ex) {
System.exit(1);
}
In alternativa mi consigliate un modo alternativo per chiudere il server quando i client che lavorano terminano? :P