Независимо от того, какой поток зарегистрировал делегата в синглтоне (или добавил событие в синглтон, это не имеет значения), уведомление произойдет в контексте уведомляющего потока .
Если вам нужно, чтобы один поток выполнял действия в соответствии с указаниями другого потока, вам необходимо сообщить об этом намерении с помощью данных.Например, каждый поток может установить блокирующую очередь и ждать, пока элементы будут помещены в их очередь другими.Этими элементами могут быть делегаты, объекты или чистые элементы данных, которые необходимо интерпретировать перед выполнением действия.Важно то, что для того, чтобы действие произошло в потоке, сам поток должен выполнить это действие.