Question conceptuelle sur la sérialisation des données avec des références circulaires

StackOverflow https://stackoverflow.com/questions/5424456

Question

J'essaie d'implémenter un sérialiseur dans Python qui essaie de faire quelque chose comme ça.

S'il y a un objet FOO, ayant une référence avant à BAR, le sérialiseur viderait toutes les données de FOO et la référence serait convertie en un vidage de données de BAR. Les choses se feraient de manière récursive comme celle-ci pour toute profondeur arbitraire.

Mais il y a un problème que je rencontre avec cette approche, celle des références circulaires, que se passe-t-elle si FOO références à la barre et aux références de bar Foo? Une récursivité infinie serait alors créée.

Quelles sont les approches pour résoudre ce problème.

Remarque: Je n'ai aucun contrôle sur les données que je serais sérialisant, donc je ne peux pas exclure les références circulaires.

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top