Possible Duplicate:
About python's built in sort() methodИмя говорит само за себя.
Я пытаюсь объяснить кому-то, почему они должны использовать встроенную функцию Python sorted ()вместо того, чтобы создавать свои собственные, и я понял, что понятия не имею, какой алгоритм она использует.
Если это имеет значение, мы говорим о Python 2.7
-. 121 ---643619-
Как использовать разные файлы cookie для каждого соединения с помощью HttpURLConnection и CookieManager в Java Мне нужно было подключиться к веб-сайту из нескольких потоков одновременно с помощью HttpURLConnection, но использовать разные файлы cookie для каждого подключения. Поскольку Java поддерживает установку только глобального CookieManager, я...Мне нужно было подключиться к веб-сайту из нескольких потоков одновременно с помощью HttpURLConnection, но использовать разные файлы cookie для каждого подключения. Поскольку Java поддерживает только настройку глобального CookieManager, я реализовал следующий хак.
Вместо вызова
CookieHandler.setDefault(new CookieManager())
я реализовал пользовательскийCookieHandler
, который использует отдельный экземплярCookieStore
для каждого потока, который очищается после каждого запроса.Я создал класс с именем
SessionCookieManager
на основе исходного кода изCookieManager
.Переменная-член
cookieJar
была удалена, и ее использование было заменено наgetCookieStore()
.Был добавлен следующий код:
public class SessionCookieManager extends CookieHandler { private final static SessionCookieManager ms_instance = new SessionCookieManager(); public static SessionCookieManager getInstance() { return ms_instance; } private final static ThreadLocal
ms_cookieJars = new ThreadLocal () { @Override protected synchronized CookieStore initialValue() { return new sun.net.www.protocol.http.InMemoryCookieStore(); } }; public void clear() { getCookieStore().removeAll(); } public CookieStore getCookieStore() { return ms_cookieJars.get(); } Перед первым запросом пользовательский
CookieManager
устанавливается как глобальный по умолчаниюCookieHandler
:CookieHandler.setDefault(SessionCookieManager.getInstance());
. После каждого запроса текущий поток
CookieStore
очищается:try { ... } finally { SessionCookieManager.getInstance().clear(); }