首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法打开文件/sys/class/net/eth0/carrier

无法打开文件/sys/class/net/eth0/carrier
EN

Stack Overflow用户
提问于 2017-04-27 21:25:17
回答 1查看 826关注 0票数 0

我有下面的函数isEthernetCableConnected(),我在一个连续循环的线程中调用它。很长一段时间后,我开始看到日志“无法打开/sys/class/net/eth0/carrier”。这怎么可能呢?如果这是可能的,那么请给我一些想法如何打开文件每次。

代码语言:javascript
复制
ETH_FILE_CARRIER /sys/class/net/eth0/carrier

    int isEthernetCableConnected(){
    FILE *fp = fopen(ETH_FILE_CARRIER, "r");
    int result;
    if(fp == NULL) { 
        CLog::getInstance()->error("utility",__LINE__,__FILE__,"networked::isEthernetConnected, Could not open %s", ETH_FILE_CARRIER);
        return 0;
    }
    fscanf(fp,"%d",&result);
    fclose(fp);
    return result;
}
EN

回答 1

Stack Overflow用户

发布于 2017-04-28 00:43:05

请参考下面的链接,它可能会帮助你http://wikistack.com/how-to-check-if-ethernet-cable-is-connected-linux

在此链接中,他们尝试以不同的方式打开文件。也许你可以试一试。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43659214

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档