问题标签 [gethostbyname]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - gethostbyname 创建一个线程?
我正在使用 VS2008 和 Win7 使用 C++。
在检查程序时,我正在跟踪创建的线程,似乎 gethostbyname() 为自己创建了一个线程。你能解释一下为什么吗?
在 msdn 上说:“gethostbyname 函数返回的 hostent 结构的内存是由 Winsock DLL 从线程本地存储内部分配的。”
这个记忆是否会欺骗 Visual Studio 使其认为它是一个线程?
编辑:似乎从这个链接,以及从我的观察来看,这也发生在 Connect 函数中。我想这是正常的行为。
下面的代码来自 msdn [gethostbyname page],它表现出相同的行为。
python - Python 的 urllib2 有 gethostbyname 函数吗?
我需要使用 urllib2 获取请求的主机的 IP 地址,例如:
有没有类似的功能ip = urllib2.gethostbyname(req)
?
c++ - 在 C++ 中以编程方式清除 Windows 和 Linux 中的单个 DNS 缓存条目
我想知道是否有一种方法可以在 Windows 和 Linux 中以编程方式清除单个 DNS 缓存条目。或者,如果有其他方法可以强制 gethostbyname 调用不使用本地缓存。
清除整个缓存并不理想。
谢谢。
macos - gethostbyname 在 Mac OS X 上冻结并使用 100% CPU
我有一个程序可以打开几个套接字来监听和发送。我发现了一个非常奇怪的情况,到目前为止只在 Mac OS X 上,gethostbyname
完全冻结了程序。
首先,我没有使用线程。其次,只有当我同时运行两个测试程序副本时才会出现问题。
第一个实例创建 4 个发送和 4 个接收套接字,然后它们开始相互发送流量。在我用于消息传递的网络库中,gethostbyname()
在接收端口打开后立即调用。我发现当我启动测试程序的第二个实例时,在打开 3 个接收器后,最后一个就卡在那里了。
我已将问题缩小到对 的调用gethostbyname
,它似乎永远不会返回。(请记住,到目前为止,每次调用都运行良好gethostbyname
。)此外,当它到达这一点时,测试程序的 CPU 使用率突然跳到 100%,就好像在gethostbyname
. 另外我不能 Ctrl-C 进程,我必须从另一个终端杀死它。
显然这种行为是不可接受的,即使它只发生在启动 8 个发送方/接收方对的这种极端情况下。(一次过程中 4 个,另一个过程中 4 个。)以前有没有人见过这种情况,我该如何避免?
顺便说一句,唯一测试过的其他平台是 Linux (Ubuntu 10.04),它运行得很好。
objective-c - gethostbyname xcode 问题
嘿伙计们,我是这方面的新手,但我正在尝试使用 gethostname() 来使用 xcode 和 ipad。我已经尝试了几件事,但它们似乎都冻结了。
所以当我这样做时:
效果很好。不过,我希望能够从程序中更改网站。
我试过了:
和
他们要么提出警告:从不兼容的指针类型传递 'gethostbyname' 的参数 1,或者根本没有警告。仍然每次应用程序只是冻结。请帮忙。
android - gethostbyname 失败并出现错误 111 (ECONNREFUSED)
该设备确实具有网络连接(WiFi 和 3G)。
调用 gethostbyname() 将返回 NULL,错误码为 111 (ECONNREFUSED)。
相同的调用在 osx 和 windows 上运行良好。
可能是什么问题呢?
最好的,
c - C中的奇数字符串问题
我正在编写一些使用函数 gethostbyname() 的代码。此函数要求我向它传递我要为其查找主机的主机字符串。现在我在一个字符数组中声明了我的字符串,最后有一个空字节,因此它被认为是一个字符串。
当我像这样执行 printf 时:printf("\n%s\n",hostName);
代码将正确打印并说出如下内容:facebook.com
但是,当我尝试像这样打印字符串时:printf("\n%sX\n",hostName);
输出将Xacebook.com
出于某种原因。
有谁知道为什么 X 会覆盖我的字符串的第一个字符?我认为它应该像“facebook.comX”一样打印。
c - 我们如何缓存 gethostbyname 的结果?
我的代理服务器花了很多时间解析域名,有没有办法gethostbyname
缓存结果?
sockets - gethostbyname() 只返回linux上本地主机的地址
我正在尝试以可移植方式(Windows 和 Linux)查找本地机器的所有 IP 地址。我使用的方法是首先调用 gethostname(),然后将结果传递给 gethostbyname(),它返回一个 IP 地址数组。
问题是在 linux 上,我得到的唯一地址是 127.0.0.1。这适用于 Windows,我看到一些人说如果您的网络是由 DHCP 配置的,这将不适用于 Linux(不知道这是否是真的)。
这不是在 Linux 上执行此操作的正确方法吗?
c++ - 替代 gethostbyname
我不能gethostbyname
用来获取主机的 IP 地址,这是一个已弃用的功能,在 Windows 上只能工作 10% 的时间!
我在其他方法上找不到任何足够的资源来使用其他功能查找主机的 IP 地址(推荐 MSDN getaddrinfo
,但这似乎不是我想要的。)