我正在做一个项目,我想确认本地网络上是否存在主机。在 Qt 的 QtNetwork 包中,该QHostInfo::lookupHost
方法是一种搜索主机的便捷方式,无需执行任何类型的 ping 操作或依赖于 ping 系统调用。它的异步调用可以方便地创建一个等待调用返回的对话框,并在对话框或主程序中使用一个槽来处理返回。
来自 Qt 的 QHostInfo 文档:
要异步查找主机的 IP 地址,请调用 lookupHost(),它将主机名或 IP 地址、接收器对象和插槽签名作为参数并返回一个 ID。您可以通过使用查找 ID 调用 abortHostLookup() 来中止查找...
当结果准备好时调用该槽。结果存储在 QHostInfo 对象中。调用addresses() 获取主机的IP 地址列表,调用hostName() 获取查找的主机名。
PySide 的文档QHostInfo
详细说明了用法,lookupHost
但我认为它可能是从 Qt 文档中自动生成的,因为默认情况下,该方法在QtNetwork 的类型系统定义中lookupHost
被声明为私有方法。
在 PySide 实现中将此方法声明为私有是否有特殊原因?它是否与调用的异步性质和 Python 的 GIL 有关?