Share via


Networking_GetInterfaceConnectionStatus İşlevi

Üst bilgi: applibs/networking.h #include <>

Bir ağ arabiriminin ağ bağlantı durumunu alır. Networking_GetInterfaceConnectionStatus çağrıldığında işletim sistemi bilinen son durumu döndürür ve Networking_InterfaceConnectionStatus sabit kutusunda belirtilen arabirim durumunu güncelleştirmeye çalışır.

Döndürülen Networking_InterfaceConnectionStatus sabit listesi arabirimin, ağ bağlantısının, IP adresinin ve İnternet bağlantısının bilinen son durumunu yansıtır. Networking_GetInterfaceConnectionStatus çağrıldığında işletim sistemi, cihazın İnternet bağlantısı olup olmadığını belirlemek için http://www.msftconnecttest.com bu durum bayraklarını güncelleştirmeye ve Azure Sphere işletim sistemi ağ gereksinimlerinde belirtildiği gibi çağrısı yapmaya çalışır.

Bir uygulama, cihazın İnternet'e bağlı olup olmadığını gösteren Networking_InterfaceConnectionStatus_ConnectedToInternet durumuna göre işlem yapabilir. Ancak, çeşitli nedenlerden dolayı, durumun güncelleştirildiğinden uygulamanın İnternet'e bağlanmayı denemesi arasında ağ veya İnternet bağlantısı kaybolabilir. Bu nedenle, uygulama ağ ve İnternet kullanılabilirliği değişiklikleriyle karşılaştığınızda akıllı seçimlere olanak tanıyan bir mantık içermelidir. Uygulama bağlantı hatalarını işlemeli ve buna göre uyarlanmalıdır.

Döndürülen durum cihazın İnternet'e bağlı olmadığını gösteriyorsa, cihaz durumunun ne zaman değiştirildiğini belirlemek için uygulama Networking_GetInterfaceConnectionStatus yeniden çağırabilir.

Networking_InterfaceConnectionStatus_ConnectedToInternet cihazın İnternet'e bağlı olduğunu gösteriyorsa, cihaz her 90 saniyede bir birden fazla durum yoklamamalıdır. Bu bağlantı durumu işlevi, cihazın İnternet'e bağlı olduğunun göstergesini tekrar tekrar döndürürse, işletim sistemi yoklama aralığının çok kısa olup olmadığını denetleme durumunu kısıtlar. Önerilen uygulama yoklama aralığı bir istek/iki dakikadır.

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

Parametre

Hata

Hatayla karşılaşılırsa ve hata değerine ayarlanırsa errno -1 döndürür.

  • EFAULT: outStatus parametresi NULL'dir.

  • ENOENT: networkInterfaceName arabirim yok.

  • EAGAIN: Ağ yığını hazır değil.

Diğer errno hatalar da belirtilebilir; bu tür hatalar belirlenimci değildir ve sistem güncelleştirmeleri aracılığıyla aynı davranış korunmayabilir.

Dönüş değeri

Başarı için 0, hata için -1 döndürür; bu durumda errno hata değerine ayarlanır.

Kavramlar ve örnekler