【python 超时重试方法】教程文章相关的互联网学习教程文章

python中是否有替代threading.Condition变量的更好支持超时而不轮询的变量?【代码】

我在需要超时的线程中使用条件变量.我直到运行大量线程时才看到CPU使用率才注意到,线程模块中提供的条件变量实际上并未休眠,但会在提供超时作为参数时进行轮询. 有没有其他替代方法可以像pthreads一样实际休眠? 似乎让很多线程每隔几秒钟就休眠一次,却让它仍然消耗CPU时间,这似乎很痛苦. 谢谢!解决方法:在Python中这样做似乎很棘手,但这是一个解决方案.它依赖于产生其他线程,但不使用轮询,并确保在超时到期或原始的wait()返回时立...

Python匿名管道设置超时【代码】

我觉得这是不可能的.但是有没有办法在Linux上的Python / C中的匿名管道上设置读取超时? 是否有比设置和捕获SIGALRM更好的选择?>>> import os >>> output, input = os.pipe() >>> outputfd = os.fdopen(output, 'r') >>> dir(outputfd) ['__class__', '__delattr__', '__doc__', '__enter__', '__exit__', '__format__', '__getattribute__', '__hash__', '__init__', '__iter__', '__new__', '__reduce__', '__reduce_ex__', '__...

python-Heroku R10启动超时错误【代码】

我在Heroku上部署了一个小型Web应用程序,该应用程序是使用Python的Bottle框架制作的.我不知道为什么我在这里出现启动超时-2013-12-25T17:53:23.098442+00:00 heroku[web.1]: Starting process with command `python myapp.py` 2013-12-25T17:53:25.230922+00:00 app[web.1]: Listening on http://127.0.0.1:31150/ 2013-12-25T17:53:25.230695+00:00 app[web.1]: Bottle v0.11.6 server starting up (using GeventServer())... 201...

Python-urllib2超时【代码】

我在下面得到了一些代码片段opener = urllib2.build_opener(redirect_handler.MyHTTPRedirectHandler()) opener.addheaders = [('Accept-encoding', 'gzip')] fetch_timeout = 12 self.response = opener.open(url, timeout=fetch_timeout)但是,它的代码仍要等待60?秒才能超时…有什么线索吗?解决方法:猜测您可能需要设置套接字超时import socketdefault_timeout = 12socket.setdefaulttimeout(default_timeout)

python扭曲-在未得到响应的已发送消息上超时【代码】

我正在创建一种客户端服务器实现,并且我想确保每个发送的消息都得到响应.因此,我想创建一个超时机制,该机制不检查消息本身是否已传递,而是检查所传递的消息是否得到响应. IE,用于两台计算机1和2:1: send successfully: "hello" 2: <<nothing>> ... 1: Didn't get a response for my "hello" --> timeout我想通过为每个消息创建一个具有ID的大布尔数组来做到这一点,该数组将持有一个“进行中”标志,并将在收到消息的响应时进行设置...

DnsPython:设置查询超时/生存时间【代码】

我有一个小的脚本,用于检查大量的MX记录域列表,一切正常,但是当脚本找到没有记录的域时,跳到下一个域要花很长时间. 我尝试添加:query.lifetime = 1.0 or query.timeout = 1.0但这似乎无能为力.有谁知道如何配置此设置? 我的脚本在下面,谢谢您的宝贵时间.import dns.resolver from dns.exception import DNSException import dns.query import csvdomains = csv.reader(open('domains.csv', 'rU')) output = open('output.txt', '...

python国内使用pip提示超时

解决方法: 1、添加超时的参数,不使用缓存 pip install --default-timeout=1000 --no-cache-dir 2、使用国内源: 例如: pip install jupyter -i http://pypi.douban.com/simple --trusted-host pypi.douban.com 阿里云 http://mirrors.aliyun.com/pypi/simple/ 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/ 豆瓣(douban) http://pypi.douban.com/simple/ 清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/ 中国...

Python超时

我一直在寻找一个好的超时脚本,它可以杀死一个线程,如果它已经活动超过X秒,但我见过的所有例子都有缺陷,并不总是停止线程.使用thread.join(x)最终会破坏它作为一个线程的目的. 我发现的唯一体面的例子是Timeout on a function call,那个人并非没有缺陷…… 有人知道更好的方法吗?解决方法:请参阅我对python: how to send packets in multi thread and then the thread kill itself的回答 – 有一个带有InterruptableThread类和示例...

Python ftplib超时【代码】

我正在尝试使用ftplib获取文件列表并下载自我上次检查以来的任何新文件.我到目前为止尝试运行的代码是:#!/usr/bin/env python from ftplib import FTP import syshost = 'ftp.***.com' user = '***' passwd = '***'try:ftp = FTP(host)ftp.login(user, passwd) except:print 'Error connecting to FTP server'sys.exit()try:ftp.retrlines('LIST') except:print 'Error fetching file listing'ftp.quit()sys.exit()ftp.quit() 每当...

python – 实现和测试WebSocket服务器连接超时【代码】

我正在Tornado 3.2中实现一个WebSockets服务器.连接到服务器的客户端不是浏览器. 对于服务器和客户端之间来回通信的情况,我想添加最大值.服务器在关闭连接之前等待客户端响应的时间. 这大致是我一直在尝试的:import datetime import tornadoclass WSHandler(WebSocketHandler):def __init__(self, *args, **kwargs):super().__init__(*args, **kwargs)self.timeout = Nonedef _close_on_timeout(self):if self.ws_connection:self...

python – 在selenium webdriver.PhantomJS上设置超时【代码】

情况 我有一个简单的python脚本来获取给定URL的HTML源:browser = webdriver.PhantomJS()browser.get(url)content = browser.page_source有时,该URL指向具有缓慢加载的外部资源(例如视频文件或非常慢的广告内容)的页面. 在完成.get(url)请求之前,Webdriver将一直等到加载这些资源. 注意:由于无关紧要的原因,我需要使用PhantomJS而不是请求或urllib2 这个问题 我想在PhantomJS资源加载上设置超时,这样如果资源加载时间过长,浏览器就...

python – 循环中具有超时的用户输入【代码】

我正在尝试创建一个循环python函数,它执行任务并提示用户进行响应,如果用户在给定时间内没有响应,则序列将重复. 这是基于这个问题的松散基础:How to set time limit on raw_input 该任务由some_function()表示.超时是一个变量,以秒为单位.我有以下代码的两个问题: >无论用户是否提示,raw_input提示在指定的4秒时间后都不会超时.>当输入’q’的raw_input时(没有”,因为我知道任何键入的内容会自动输入为字符串),该函数不会退出循环...

python – AWS Elastic Beanstalk – 脚本在返回标头之前超时:application.py【代码】

我在AWS上有一个现有的Elastic Beanstalk烧瓶应用程序偶尔不会初始化并给出以下错误:[Mon Jan 23 10:06:51.550205 2017] [core:error] [pid 7331] [client 127.0.0.1:43790] script timed out before returning headers: application.py [Mon Jan 23 10:10:43.910014 2017] [core:error] [pid 7329] [client 127.0.0.1:43782] End of script output before headers: application.py任何想法为什么会这样?最近我改变了项目的requ...

python套接字对象接受超时【代码】

问题:python中的socket.accept()函数是否有某种超时或中断? 信息: 我有一个程序,它有一个绑定到端口的子线程,并不断接受和管理并将它们传递给主线程的队列.现在我正试图让子线程中断,以便它可以适当地解构.我认为我可以简单地停止子线程并让父母解构孩子,但是在其他时候我希望能够提前返回接受,所以我决定这将是最有用的方法. 那么,有没有一种方法可以让我有一个超时或取消接受方法,这样线程可以返回没有先连接到它的东西?解决...

python 超时重试方法

在应用中,有时候会 依赖第三方模块执行方法,比如调用某模块的上传下载,数据库查询等操作的时候,如果出现网络问题或其他问题,可能有超时重新请求的情况; 目前的解决方案有 1. 信号量,但不支持window; 2.多线程,但是 如果是大量的数据重复操作尝试,会出现线程管理混乱,开启上万个线程的问题; 3.结合采用 eventlet 和 retrying模块 (eventlet 原理尚需深入研究) 下面的方法实现:超过指定时间重新尝试某个方法# -*- codin...