2 Stimmen

Warum führt die Verwendung von Causalities in CCR zu Speicherlecks?

Hat jemand Informationen über die Verwendung von Causalities? Ich habe erfolglos versucht, diese in meinem Projekt zu verwenden, da sie anscheinend massive Speicherbelastungen verursachen.

Ist das ungewöhnlich?

Abgesehen von den normalen (aka übermäßig einfachen) Beispielen in der Dokumentation gibt es nicht sehr viele Informationen über die Verwendung von Kausalitäten in CCR-Code.

Ich kann keine Code-Beispiele per-say geben, da ich die Causalities herausgerissen und durch konventionelle Ausnahmebehandlung ersetzt habe (nicht konventionell in CCR aber!)

2voto

Nick Gunn Punkte 724

Ich habe erst vor kurzem damit begonnen, mich mit ihnen zu beschäftigen, daher kann ich nicht viele Ratschläge geben, aber ich werde anbieten, was ich kann:

  1. Überprüfen Sie, ob Ihr Code Zyklen aufweist - ist es möglich, dass eine Kausalität immer wieder neu erzeugt wird? Ein Beispiel hierfür ist, wenn Sie eine neue Kausalität erstellen und eine Nachricht an eine andere Komponente senden, die (letztendlich) an Ihre Komponente zurückgesendet wird, was dazu führt, dass die ursprüngliche Aufgabe erneut ausgeführt wird, so dass sich die Kausalitäten gegenseitig "stapeln". Eine Möglichkeit, dies zu tun, besteht darin, ActiveCausalities zu überprüfen, bevor Sie Ihre neue Aufgabe hinzufügen.
  2. Haben Sie versucht, die Kausalität am Ende des Bereichs, in dem Sie sie hinzugefügt haben, explizit zu entfernen?
  3. Offensichtlich nutzt der DSS die Kausalitäten ausgiebig, so dass man meinen könnte, wenn es wirklich ein Leck gäbe, hätten sie es gefunden.
  4. Es stimmt, es gibt nicht genügend Beispiele zu diesem Thema, daher ist es schwierig zu wissen, was die beste Praxis ist, ohne die Umsetzung zu verstehen.

Siehe diese Stelle aus. Es legt nahe, dass Sie die Kausalität am Ende des Bereichs, den Sie hinzugefügt haben, automatisch entfernen wollen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X