Ich habe gelesen, dass die Einheit der Granularität für statische Felder in .Net sind pro AppDomain, nicht pro Prozess. Ist es möglich, ein prozessweites Singleton-Objekt zu erstellen?Wie erstellen Sie ein prozessweites Singleton-Objekt?
1
A
Antwort
2
Sie müssen Marshalled-Aufrufe verwenden, um Informationen über AppDomains zu kommunizieren. Daher müssen Sie das Statusobjekt in der übergeordneten AppDomain erstellen und es dann an alle untergeordneten Elemente übergeben, die es verwenden möchten. Wenn Sie dies nicht tun müssten, würden Sie Speicher über AppDomains teilen, was den Zweck zunichte macht.
Innerhalb jeder AppDomain könnten Sie einen Singleton haben, der einen Verweis auf den (marshalled) Verweis auf den tatsächlichen Singleton in der primären Domäne enthält. Ihr Code würde also immer noch "Singleton-y" aussehen, aber dahinter wäre eine versteckte Verkabelung.
Verwandte Themen
- 1. Erstellen Sie ein Ranking
- 2. Wie erstellen Sie ein freistehendes C++ - Programm?
- 3. Wie erstellen Sie ein Wörterbuch in Java?
- 4. Wie erstellen Sie ein Zeichenkettenliteral in Excel?
- 5. Erstellen Sie ein Formular responsive?
- 6. Erstellen Sie ein TIFF-Bild
- 7. Erstellen Sie ein benutzerdefiniertes Label
- 8. Erstellen Sie ein neues Array
- 9. So erstellen Sie ein Blockdiagramm
- 10. Erstellen Sie ein Ember.js Komponentenansichtselement
- 11. Erstellen Sie ein Regex-Muster
- 12. Erstellen Sie ein Gesamtobjekt RESTfully
- 13. Erstellen Sie ein Netty ByteBuf
- 14. Erstellen Sie ein leeres Versprechen
- 15. Erstellen Sie ein Fraction Array
- 16. erstellen Sie ein Fenster opencv
- 17. So erstellen Sie ein Mitarbeiterverzeichnis
- 18. So erstellen Sie ein Modal
- 19. Erstellen Sie ein Plugin oder ein Juwel?
- 20. So erstellen Sie ein Kreisdiagramm in CSS
- 21. So erstellen Sie ein Textfeld mit Dezimalwert
- 22. So erstellen Sie ein MultiPolygon in Cäsium
- 23. Erstellen Sie ein Schraffurmuster in WPF
- 24. So erstellen Sie ein Popup-Fenster
- 25. Erstellen Sie ein Responsive CSS-Ribbon
- 26. Erstellen Sie ein benutzerdefiniertes Formular in Joomla
- 27. Erstellen Sie ein Homescreen-Widget GUI programmgesteuert
- 28. Erstellen Sie ein statisches Array mit Class.forName
- 29. Erstellen Sie ein eigenständiges Glas mit JRuby
- 30. Erstellen Sie ein JSON-Objekt mit Java