Делегирование, просто в качестве одного примера. Рассмотрим веб-сервер, который получает запросы на подключение. Он может делегировать рабочему потоку конкретный запрос. Основной поток может передавать все данные, которые он хочет, рабочему потоку, если эти данные неизменны, и ему вообще не нужно беспокоиться о одновременном доступе к данным.
(В этом отношении как основной поток, так и рабочий поток могут отправлять все неизменяемые данные друг другу по своему усмотрению, для этого просто требуется какая-то очередь сообщений, поэтому для синхронизации может потребоваться синхронизация, но не сами данные. не требуется очередь сообщений для передачи данных в рабочий поток, просто создайте данные перед запуском потока, и до тех пор, пока данные являются неизменяемыми в этот момент, вам не требуется синхронизация, блокировки или управление параллелизмом. сортировать, кроме возможности запуска потока.)