Co dokładnie robi ReferenceLoopHandling.Ignore w Newtonsoft.json?

Czy ktoś może przedstawić mi scenariusz, w którym można go użyć. Co rozumiem przezReferenceLoopHandling.Ignore jest, jeśli masz obiekt A, który odwołuje się do obiektu B i B, odwołuje się do C i C ponownie, odwołując się do A (A-> B-> C-> A), a następnie podczas serializowania, skończy się w nieskończonej pętli między C i A, można uniknąć, używając poniżej. Czy mam rację?

 JsonConvert.SerializeObject(data, 
     Formatting.Indented, 
     new JsonSerializerSetting()
         {
             ReferenceLoopHandling = ReferenceLoopHandling.Ignore 
         } 
 ));

Mam problem z pętlą odwoływania się, który rozwiązuje się za pomocą powyższego, ale chcę dokładnie zrozumieć, co robi, ponieważ powyższa linia jest mięsem aplikacji (mięso krytyczne)

questionAnswers(1)

yourAnswerToTheQuestion