Я создаю программу для URL-адреса URL-адреса python. Для моих целей, я хочу, чтобы это время ожидания на самом деле очень быстро, так что я делаюurllib2 раза, но не закрывает соединение сокета
urllib2.urlopen("http://.../", timeout=2)
Конечно это раз правильно, как это должно быть. Однако он не пытается закрыть соединение с сервером, поэтому сервер считает, что клиент все еще подключен. Как я могу попросить urllib2 просто закрыть соединение после истечения времени?
Запуск gc.collect() не работает, и я не хочу использовать httplib, если не могу помочь.
Ближайшее, что я могу получить, это: первая попытка будет тайм-аут. Сервер сообщает, что соединение закрыто только как вторая попытка тайм-аута. Затем сервер сообщает, что соединение закрыто только в качестве третьей попытки тайм-аута. Ad infinitum.
Большое спасибо.
Хм! Очень интересная мысль. Спасибо, но это не совсем работает; тем не менее, я так и не думал об этом. Я думаю, что для моего проекта все мои рассуждения просто слишком хаки. Было бы лучше, если бы я не полагался на это и вместо этого просто прекратил дублировать соединения на сервере. – Michael