Domanda

Se uno ha un frammento del loro codice che controlla se la rete è abilitata su una macchina e ha un indirizzo IP attivo.

Ho un software di rete che si collega ad altre macchine client, Anche se funziona quando è collegata la macchina, ma se si scollega il cavo o disattivare la rete, getta un intero Reem di eccezioni.

Sarebbe bello basta mettere un controllo sulla parte superiore: D

Grazie in anticipo

È stato utile?

Soluzione

Rete è sempre in stato dinamico, un semplice controllo, all'inizio della corsa non è sufficiente per un corretto funzionamento. Così, purtroppo, si deve verificare la presenza di qualsiasi stato operazioni di rete succeess.

Per quanto riguarda nemmeno iniziare il programma con la rete scollegata stato ... Considerate se il programma viene avviato automaticamente dopo computer è andato in crash o interruzione di corrente. O se qualsiasi altro componente ha subito qualcosa di simile, o di un problema tecnico. Questi accadono sorprendentemente spesso, e riavviare il programma di n + 1 computer solo perché alcuni dweeb inciampato sul cavo di rete è abbastanza fastidioso ..

Per il controllo di una disponibilità generale di messa in rete, si può sempre "ping -q -c 1 127.0.0.1" valore di ritorno è 1 se localhost non risponde. Questo dovrebbe essere in script di avvio, del tutto inutile per il codice in applicazione.

Altri suggerimenti

Si dovrebbe probabilmente solo prendere le eccezioni: altrimenti avrete problemi se la macchina è collegata a una rete, ma non uno con le opportune altre macchine su di esso

.

Penso che si può ottenere quello che vuoi con il comando 'ifconfig' nel terminale.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top