Mit Singleton Mixin von Schienen könnte ich eine Singleton-Klasse im Bereich der Schienen App erstellen. Aber ich habe mich gefragt, ob es eine Möglichkeit gibt, es im Rahmen einer bestimmten Anfrage zu erstellen?Singleton im Rahmen einer Anfrage in Schienen
8
A
Antwort
7
Da eine Anfrage an einen Faden gebunden ist, können Sie Thread
local Speicher verwenden:
class RequestSingleton
def self.instance
Thread.current['request-singleton'] ||= RequestSingleton.new
end
def self.clear
Thread.current['request-singleton'] = nil
end
end
Verbrauch:
def index
RequestSingleton.instance.do_some_setup
# ...
RequestSingleton.clear
end
... und anderswo einfach RequestSingleton.instance
verwenden, darauf zuzugreifen.
Da es Thread lokal ist, gibt es keine Synchronisierungsprobleme.
Verwandte Themen
- 1. @Singleton in Scala spielt Rahmen
- 2. Rahmen Anfrage Teile im Frühjahr Test mvc
- 3. Ajax-Anfrage in Schienen aplication
- 4. Wie um Anfrage im Spiel Rahmen mit Scala umleiten?
- 5. Schienen friendly_id schlecht Anfrage
- 6. EJB 3.1 Singleton im Cluster
- 7. Wie rende ich JSON von einer Ajax-Anfrage in Schienen?
- 8. Anfrage Schienen Modelle mit URL_PARAMS
- 9. Java-Synchronisation im Singleton-Muster
- 10. A/B Rahmen für Schienen 3?
- 11. IndexOutOfRangeException im Rahmen der Ajax.Net-Erweiterungen
- 12. Singleton Entwurfsmuster vs Singleton Bohnen im Frühjahr Container
- 13. Bild im Kreis Rahmen iOS
- 14. Lebensdauer einer Singleton-Klasse
- 15. Django Rest Rahmen - self.context nicht Anfrage Attribut
- 16. Erweiterung einer Singleton-Klasse?
- 17. Django übriges Rahmen benutzerdefiniertes Modell PUT Anfrage
- 18. Wie dient der Singleton Bean der gleichzeitigen Anfrage?
- 19. Mysql im Frühjahr Rahmen MySQLSyntaxErrorException
- 20. Bootstrap glyphicons im Spiel Rahmen
- 21. Ausnahmebehandlung Rahmen im Frühjahr java
- 22. Frühling Singleton Bohne
- 23. Anzeige Verbindungsfehlermeldungen im ionischen Rahmen
- 24. Wie kann ein ASMX-Webdienst im Singleton-Modus ausgeführt werden?
- 25. Django REST Rahmen - zwingt Anfrage erhalten schließen Filter in ModelViewSet
- 26. Schienen oder Pylonen - Irgendein guter Rahmen für Python?
- 27. Schienen Turbolinks lange Anfrage zeigt keine Seitenladung
- 28. Singleton-Klasse in einer statischen Bibliothek
- 29. Lazy Singleton in einer Multithread-C# -Anwendung
- 30. Wie Singleton ist javax.ejb.Singleton in einer Clusterumgebung?