perfstat_netadapter 子常式

用途

擷取網路配接卡的統計資料。

程式庫

Perfstat 程式庫 (libperfstat.a)

語法

#include <libperfstat.h>

int perfstat_netadapter (name, userbuff, sizeof_struct, desired_number)

perfstat_id_t *name;
perfstat_netadapter_t *userbuff;
size_t sizeof_struct;
int desired_number;

說明

perfstat_netadapter 子常式會擷取一或多個個別網路配接卡統計資料。 也會使用相同的功能來擷取可用的網路配接卡統計資料數目。

若要取得一個以上網路配接卡統計資料,請將 name 參數指定為第一個需要統計資料的網路配接卡名稱,並相應地設定 desired_number 參數。 若要從第一個網路配接卡開始,請將 name 參數設為 "" 或 FIRST_NETACATERuserbuff 參數一律會指向可包含此函數所複製之所需 perfstat_netadpater_t 結構數的記憶體區域。 順利完成子常式時,在複製所有結構之後, name 參數會設為下一個網路配接卡的名稱或 ""。

若要擷取可用的網路配接卡統計資料數目,請將 nameuserbuff 參數設為 NULL,並將 desired_number 參數設為 0。 傳回的值是可用的配接卡數目。

參數

項目 說明
名稱 指定 "" 或 FIRST_NETadapter,或需要統計資料的第一個網路配接卡名稱。 例如, ent0ent1
使用者緩衝區 指向要填入一個以上 perfstat_netadapter_t 結構的記憶體區域。
sizeof_struct 指定 perfstat_netadapter_t 結構的大小。
desired_number 指定要複製到 userbuffperfstat_netadapter_t 結構數目。

回覆值

順利完成子常式時,除非使用函數來擷取可用的結構數目,否則會傳回填入的結構數目。 如果子常式不成功,則會傳回值 -1 ,並設定 errno 廣域變數。

錯誤碼

如果下列其中一項為真,則子常式不成功:

項目 說明
EINVAL 其中一個參數無效。
EFAULT 記憶體不足。
ENOMEM 字串的預設長度太短。
ENOMSG 無法存取字典。

檔案

libperfstat.h 檔案定義標準巨集、資料類型及子常式。