python请求内存泄漏

时间:2016-07-02 00:55:36

标签: python memory-leaks python-requests python-3.4

我有内存泄漏的问题。通过实验,我逐渐意识到这是我逐渐吃掉所有可用内存的代码:

def my_func(url):
    with requests.Session() as r:
        r.get(url)
ThreadPool(128).map(my_func, open('urls.txt'))

Ubuntu Linux,Python 3.4,都是最新版本。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您需要提出真正的问题。

我认为您可以使用“具有上下文”功能来避免内存泄漏

import requests
import json
from contextlib import closing

url = 'https://cn.bing.com/'
with closing(requests.get(url)) as resp:
    print(resp._content)    

或者您应该添加标题以关闭与服务器的连接,如果连接错误是在服务器端,则可以减少与一台服务器的连接:

headers = {'Connection': 'close'}