Ich brauche eine Plugin-Architektur innerhalb C#/net, um für eine benutzerdefinierte Datenraster/UmwandlungPlugin-Architektur in .net. Entladen
- benutzerdefinierte benutzerdefinierte Aktionen
- Handhabung des Datentyp Code zu laden, zu implementieren,/...
aus nicht statischen verbundenen Assemblydateien.
Da die Anwendung viele benutzerdefinierten benutzerdefinierten Aktionen behandeln muss, muss ich sie einmal entladen, um die Speichernutzung zu reduzieren.
fand ich mehrere gute Artikel über Plugin-Architekturen, zB:
aber keiner von ihnen gab mir genug Wurst für eine richtig Entladen Versammlung.
Da das Programm verteilt werden soll und die benutzerdefinierten Aktionen (wie der Name besagt) benutzerdefiniert sind: Wie kann ich verhindern, dass die Assembly schädlichen Code ausführt (zB mein Programm schließen, Dateien löschen)?
Gibt es noch andere Fallstricke, die einer von Ihnen kennen gelernt hat?
So wird eine einzelne Instanz Ihrer Anwendung lange genug laufen für Sie Speicherverbrauch betroffen sein? Weil der einfachste Weg ist, zu warten, bis die Anwendung beendet wird. Funktioniert nicht so gut, wenn die Anwendung nie beendet wird! –
gut, wie ich eine Client-Server-Architektur entwickeln, zumindest sollte der Server eine lange Zeit laufen (zumindest hoffe ich :-) –
+1 für die Verwendung von "Wurst" in Ihrer Frage! – Eccentropy