Публикуйте: объект должен включить его на код за пределами текущей области:
Общие формы: хранение ссылок на объекты на общественные статические домены; возвращение ссылок в не частных методах; Публикация внутренних экземпляров класса, включая ссылки.
Escape: опубликовать объект, когда он не готов.
Не позволяйте этой ссылке уйти от конструктора. Например, запустите поток в конструкторе, и поток будет содержать ссылки на объект.
Синхронизированный контейнер: выполняет доступ к путешествиям ко всем состояниям контейнера, Vector, Hashtable, Cllections.synchronizedMap | Список
Параллельные контейнеры: concurrenthashmap, copyonwritearraylist, conturentlinkedqueue, blockingqueue
Перечислите преимущества функции случайного доступа.
Блокировка добавляет блокируемой операции установки
Concurrenthashmap: отдельные замки, обеспечивая высокую пропускную способность для одновременного доступа, одновременно не теряя практически без доступа к одному потоку. Возвращает слабо последовательный итератор.
Слабая согласованность итератора обнаружит изменения в контейнере после создания итератора.
Одновременный размер контейнера (), isempty () ослаблен и возвращает приблизительный результат.
CopyonWritearRayList: копировать каждый раз, когда контейнер изменяется, и итеративное требование больше, чем требование об изменении.
Модель производителя-потребителя, используя ограниченные очереди блокировки, чтобы отделить производителей и кода потребителей.
Структура выполнения задачи исполнителя реализует модель производителя и потребителей.
Synchronousqueue: Поместите ожидание, пока потребитель будет доступен, приобретите ожидание, пока производитель будет доступен, подходит для сценариев, где потребитель достаточно.
Двойная очередь связана с режимом кражи работы. Это отличается от того, что все потребители имеют очередь работы в режиме производителя-потребителя. Каждый потребитель в режиме кражи работы имеет свою собственную двойную очередь. Если потребитель завершает всю свою работу, он может украсть задачи в конце других очередей потребителей.
Режим кражи работы подходит для работы в единицу задачи, может быть идентифицировано больше задач, таких как обход файлов.
Когда метод может выбросить прерывание, это означает, что он является блокируемым методом. Бросить или ловить прерванную экспрессию.
Синхронизатор: синхронизатор --- Семфор, барьер, защелка, инкапсулирует состояние, определяет поведение потока в этом состоянии (проход или блоки), обеспечивает метод манипулирования состоянием и эффективно ожидает, что синхронизатор входит в желаемое состояние.
Задержка защелки: задерживает прогресс потока до тех пор, пока нить не достигнет конечного состояния, как одноразовый переключатель. Может использоваться для обеспечения того, чтобы конкретная деятельность не была выполнена до завершения других действий.
Например:
FutureTask может использоваться в качестве блокировки, абстрактного расчета портативного результата и реализован с помощью Callable. Future.get зависит от статуса выполнения задачи. Если задача будет выполнена, результат будет возвращен. В противном случае это будет ждать.
Структура исполнителя использует FutureTask для выполнения асинхронных задач.
Semapher Semapher: используется для управления количеством действий, которые могут одновременно получить доступ к конкретному ресурсу или одновременно выполнять данную операцию, пул ресурсов, граница контейнера.
Барьерный уровень: аналогично блокировке, все потоки должны достигать уровня одновременно, прежде чем они смогут продолжить обработку. Блокировка ждет времени, и уровень ждет других потоков и используется повторно. Через уровень, ожидание вернет уникальный номер индекса прибытия для каждого потока, который можно использовать для избрания лидера и выполнить некоторые специальные задачи на следующей итерации.
Обменник - это форма уровня.
Выше всего содержание этой статьи. Я надеюсь, что содержание этой статьи поможет всем, кто учится или работа. Я также надеюсь поддержать Wulin.com больше!