全局默认超时是多少

全局默认超时是多少,第1张

全局默认超时是多少

我怀疑这与实现有关。也就是说,对于CPython:

来自

socket.create_connection

如果没有 超时 供应,全局默认超时设置返回由:FUNC:

getdefaulttimeout
使用。

来自

socketmodule.c

static PyObject *socket_getdefaulttimeout(PyObject *self){    if (defaulttimeout < 0.0) {        Py_INCREF(Py_None);        return Py_None;    }    else        return PyFloat_FromDouble(defaulttimeout);}

此前在同一个文件,

static double defaulttimeout = -1.0; 

所以看起来

Py_None
aka
None
是默认超时。换句话说,
urlopen
永不超时。至少不是从Python端开始。我猜想,如果 *** 作系统提供的网络功能本身也有超时,那么仍然会发生超时。


编辑:哎呀,我想我根本不需要去寻找答案,因为它就在文档中。

None
表示新的套接字对象没有超时。首次导入套接字模块时,默认值为
None



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5644960.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存