1

是否有人有他们的代码片段,用于检查网络是否在机器上启用并具有活动的 IP 地址。

我有一个连接到其他客户端机器的网络软件,虽然它在机器连接时可以工作,但是如果我拔下电缆或禁用网络,它会引发一大堆异常。

最好把支票放在上面:D

提前致谢

4

3 回答 3

3

您可能应该只捕获例外情况:否则,如果机器连接到网络,而不是与适当的其他机器连接的网络,您将遇到问题。

于 2009-12-02T10:51:28.510 回答
3

网络始终处于动态状态,运行开始时的简单检查不足以正确运行。所以不幸的是,您必须检查任何网络操作成功状态。

至于在网络断开状态下甚至不启动程序...考虑一下您的程序是否在计算机崩溃或电源故障后自动启动。或者,如果任何其他组件遭受了类似的情况或故障。这些情况经常发生,并且仅仅因为一些 dweeb 偶然发现网络电缆而在 n+1 台计算机上重新启动程序是非常烦人的。

为了检查网络的一般可用性,如果 localhost 没有应答,您始终可以“ping -q -c 1 127.0.0.1”返回值为 1。这应该在启动脚本中,完全没有必要在应用程序中对其进行编码。

于 2009-12-02T11:03:50.033 回答
2

我认为您可以在终端中使用“ifconfig”命令获得所需的内容。

于 2009-12-02T10:47:16.830 回答