Condividi tramite


Funzione Networking_GetInterfaceConnectionStatus

Intestazione: #include <applicazioni/networking.h>

Ottiene lo stato della connessione di rete per un'interfaccia di rete. Quando viene chiamato Networking_GetInterfaceConnectionStatus , il sistema operativo restituisce l'ultimo stato noto e tenta di aggiornare lo stato dell'interfaccia specificato nell'enumerazione Networking_InterfaceConnectionStatus.

L'enumerazione Networking_InterfaceConnectionStatus restituita riflette l'ultimo stato noto dell'interfaccia, della connettività di rete, dell'indirizzo IP e della connessione Internet. Quando viene chiamato Networking_GetInterfaceConnectionStatus , il sistema operativo tenta di aggiornare questi flag di stato ed effettuare una chiamata, http://www.msftconnecttest.com come indicato nei requisiti di rete del sistema operativo Azure Sphere, per determinare se il dispositivo dispone di connettività Internet.

Un'applicazione può intervenire in base allo stato Networking_InterfaceConnectionStatus_ConnectedToInternet , che indica se il dispositivo è connesso a Internet. Tuttavia, per vari motivi, la connettività di rete o Internet potrebbe andare persa tra il momento in cui lo stato è stato aggiornato e il momento in cui l'applicazione tenta di connettersi a Internet. Di conseguenza, l'applicazione deve includere la logica che consente scelte intelligenti in caso di modifiche alla disponibilità di rete e Internet. L'applicazione deve gestire gli errori di connessione e adattarsi di conseguenza.

Se lo stato restituito indica che il dispositivo non è connesso a Internet, l'applicazione può chiamare di nuovo Networking_GetInterfaceConnectionStatus per determinare quando viene modificato lo stato del dispositivo.

Se Networking_InterfaceConnectionStatus_ConnectedToInternet indica che il dispositivo è connesso a Internet, il dispositivo non deve eseguire il polling dello stato più di una volta ogni 90 secondi. Se questa funzione di stato della connessione restituisce ripetutamente l'indicazione che il dispositivo è connesso a Internet, il sistema operativo ha limitato la verifica dello stato se l'intervallo di polling è troppo breve. L'intervallo di polling consigliato per le applicazioni è di una richiesta/due minuti.

int Networking_GetInterfaceConnectionStatus(const char *networkInterfaceName, Networking_InterfaceConnectionStatus *outStatus);

Parametri

Errori

Restituisce -1 se si verifica un errore e imposta errno il valore di errore.

  • EFAULT: il outStatus parametro è NULL.

  • ENOENT: l'interfaccia networkInterfaceName non esiste.

  • EAGAIN: lo stack di rete non è pronto.

Potrebbero anche essere specificati altri errno errori. Tali errori non sono deterministici e lo stesso comportamento potrebbe non essere mantenuto tramite gli aggiornamenti di sistema.

Valore restituito

Restituisce 0 per operazione riuscita, -1 per errore, nel qual caso errno è impostato sul valore di errore.

Concetti ed esempi