2009-03-09 8 views
2

Hat jemand Informationen über die Verwendung von Kausalitäten? Ich habe erfolglos versucht, diese auf meinem Projekt zu verwenden, da sie massive Speicherlasten verursachten.Warum führt die Verwendung von Ursachen in CCR zu Speicherlecks?

Ist das ungewöhnlich?

Über die normalen (in der Dokumentation genannten) Beispiele hinaus gibt es nicht viele Informationen über die Verwendung von Kausalitäten im CCR-Code.

Ich kann keine Codebeispiele geben pro-sagen, wie ich die Kausalitäten herausgerissen und mit konventionelleren Ausnahmebehandlung (nicht konventionell in CCR aber!) Ersetzt

Antwort

2

Ich habe bei ihnen erst vor kurzem begonnen suchen, so kann ich nicht viel Beratung bieten, aber ich werde das bieten, was ich kann:

  1. überprüfen Sie, ob Sie alle Zyklen in Ihrem Code haben - ist es möglich, dass eine Kausalität hervorgebracht wird immer wieder und wieder? Ein Beispiel hierfür ist, dass Sie eine neue Kausalität erstellen und eine Nachricht an eine andere Komponente senden, die (letztendlich) zurück an Ihre Komponente sendet, wodurch die ursprüngliche Aufgabe erneut ausgeführt wird, sodass die Kausalitäten aufeinander "stapeln". Eine Möglichkeit, dies zu tun, ist ActiveCausalities zu überprüfen, bevor Sie Ihr neues hinzufügen.
  2. Haben Sie in Betracht gezogen, die Kausalität am Ende desselben Bereichs, in dem Sie sie hinzugefügt haben, explizit zu entfernen?
  3. Offenbar verwendet DSS Kausalitäten ausgiebig, so dass, wenn es wirklich ein Leck gäbe, würden Sie denken, dass sie es gefunden hätten.
  4. Vereinbart, es gibt nicht genug Proben zu diesem Thema, so ist es schwierig zu wissen, was die beste Praxis ist, ohne zu versuchen, die Implementierung zu verstehen.

prüfen this post aus. Es schlägt vor, dass Sie die Kausalität am Ende des von Ihnen hinzugefügten Bereichs automatisch entfernen möchten.

+0

Ich denke, dass ich noch einen langen Weg vor mir habe, um die CCR Best Practices/Patterns zu lernen –

Verwandte Themen