Существует два типа аннотаций потока:
InitiatingFlow
, который используется для аннотирования потоков, которые запускаются напрямую (либо другими потоками, службой или через RPC) InitiatedBy
, который используется для аннотирования потоков, которые узел запускает в ответ на сообщения из других потоков.Эта аннотация принимает в качестве единственного аргумента имя InitiatingFlow
класса
Когда узел получает сообщение из потока, запущенного на другом узле, он проходит следующий процесс:
Он проверяет, установлен ли у него поток, который является InitiatedBy
потоком, в который он получил сообщение от
Если он это делает, он вызывает этот поток дляначать связь с InitiatingFlow
Если этого не произойдет, будет выдано исключение
Таким образом, поток ответчикаэкземпляр создается каждый раз, когда узел получает сообщение из потока InitiatedBy
потока ответчика.Этот поток «остается в живых», пока не завершит связь с экземпляром потока InitiatedBy
.