Я пытаюсь посетить веб-страницы и проверить, если владелец веб-сайта позволяет связаться с ним или нет ..использования памяти Thread продолжает расти
Вот http://pastebin.com/12rLXQaz
Это функция, каждый поток вызовов:
def getpage():
try:
curl = urls.pop(0)
print "working on " +str(curl)
thepage1 = requests.get(curl).text
global ctot
if "Contact Us" in thepage1:
slist.write("\n" +curl)
ctot = ctot + 1
except:
pass
finally:
if len(urls)>0 :
getpage()
Но дело в памяти программы держать на получение увеличена .. (pythonw.exe)
в потоке вызывающей функции снова сотрудничества это правда. память программы должна оставаться как минимум примерно на том же уровне.
Для списка, содержащего около 100k URL, программа занимает гораздо больше, чем 3GB и увеличивающиеся ...
Вы пытались помещать их в 'queue.Queue' и запускать только 100 потоков? Или запустив max 100 потоков, а затем начиная с 'join()' – User
не пробовали Queue .. если я использую объединение в функции, программа ждет, пока все потоки не будут завершены, что займет гораздо больше времени. – user2511798
1. Попробуйте включить соответствующие бит для вашего кода в вашем вопросе. 2. Ваш код не работает, «NameError: name« tarray »не определен». –