透過集合功能整理內容 你可以依據偏好儲存及分類內容。

nl::Inet::AsyncDNSResolverSockets

#include <src/inet/AsyncDNSResolverSockets.h>

這是 InetLayer 的內部類別,可為 InetLayer 中的非同步網域名稱系統 (DNS) 解析提供輔助 API。

總結

應用程式層沒有可用的公開介面。

公開函式

Cancel(DNSResolver & resolver)
取消仍在執行的待處理 DNS 查詢。
EnqueueRequest(DNSResolver & resolver)
DNSResolver 物件排入指定主機名稱的非同步 IP 位址解析。
Init(InetLayer *inet)
AsyncDNSResolverSockets 類別的明確初始化器。
PrepareDNSResolver(DNSResolver & resolver, const char *hostName, uint16_t hostNameLen, uint8_t options, uint8_t maxAddrs, IPAddress *addrArray, DNSResolver::OnResolveCompleteFunct onComplete, void *appState)
在非同步解析度之前,此方法會準備 DNSResolver 物件。
Shutdown(void)
這是 AsyncDNSResolverSockets 類別的明確初始化器,負責關閉執行緒並刪除雙向與變數變數。

公開函式

取消

INET_ERROR Cancel(
  DNSResolver & resolver
)

取消仍在執行的待處理 DNS 查詢。

詳細資料
參數
[in] resolver
DNSResolver 物件的參照。

佇列

INET_ERROR EnqueueRequest(
  DNSResolver & resolver
)

DNSResolver 物件排入指定主機名稱的非同步 IP 位址解析。

詳細資料
參數
[in] resolver
DNSResolver 物件的參照。
傳回值
INET_NO_ERROR
INET_ERROR_NO_MEMORY
表示 Inet 層解析器集區是否已滿。
other
合適的 POSIX 網路或作業系統錯誤。

Init

INET_ERROR Init(
  InetLayer *inet
)

AsyncDNSResolverSockets 類別的明確初始化器。

這會初始化並變更雙向變數,並建立用來處理非同步 DNS 解析的執行緒。

詳細資料
參數
[in] aInet
InetLayer 物件的指標。
傳回值
INET_NO_ERROR
other
合適的 POSIX 網路或作業系統錯誤。

準備 DNS 解析器

INET_ERROR PrepareDNSResolver(
  DNSResolver & resolver,
  const char *hostName,
  uint16_t hostNameLen,
  uint8_t options,
  uint8_t maxAddrs,
  IPAddress *addrArray,
  DNSResolver::OnResolveCompleteFunct onComplete,
  void *appState
)

在非同步解析度之前,此方法會準備 DNSResolver 物件。

詳細資料
參數
[in] resolver
分配的 DNSResolver 物件的參照。
[in] hostName
指向待查詢主機名稱的 C 字串的指標。
[in] hostNameLen
主機名稱的字串長度。
[in] options
整數值,用來控制主機名稱位址解析方式。值來自 #DNSOptions 列舉。
[in] maxAddrs
在 DNS 資料表中儲存的地址數量上限。
[in] addrArray
指向 DNS 資料表的指標。
[in] onComplete
DNS 要求完成時,回呼函式的指標。
[in] appState
指向 DNS 要求時,要傳送到 onComplete 的應用程式狀態的指標。
傳回值
INET_NO_ERROR

停用

INET_ERROR Shutdown(
  void
)

這是 AsyncDNSResolverSockets 類別的明確初始化器,負責關閉執行緒並刪除雙向與變數變數。

詳細資料
傳回值
INET_NO_ERROR
是否成功關閉
other
合適的 POSIX 網路或作業系統錯誤。