Statische Methoden und Threadsicherheit

25/10/2007 - 16:38 von Jürgen Kliezz | Report spam
Hallo zusammen,

ich bin gerade etwas am rotieren ob einer womöglich uralten
Frage - welche Probleme warten auf mich, wenn ich statische
Methoden verwende?

Es geht konkret um meine Datenzugriffsschicht, die letztlich
nur aus einem Set von Klassen besteht, in deren Methoden
ich das O/R-Mapping mittels DataReader > meine Objekte
durchführe.

Hier habe ich normale Klassen, die ich instanziere und dann
die Methoden aufrufe - die Methoden sind autark, nutzen
also keine Memberinformationen.

Laut Codeanalyse soll ich jetzt alles in statische Methoden
umwandeln, nachdem ich nachgelesen habe ist das auch
plausibel:

Der Compiler muss nicht prüfen ob die Instanz des Objektes
null ist, und beim Aufruf muss erst gar keine Instanz
erzeugt werden - was die Sache schneller machen dürfte.

Die Frage ist, ob ich in irgendwelche Probleme bzgl.
Threadsicherheit laufe?

Es geht nur um Methoden, nicht um Daten.

Jürgen

P.s.: Ist übrigens eine Webanwendung.
 

Lesen sie die antworten

#1 Frank Dzaebel
25/10/2007 - 16:54 | Warnen spam
Hallo Jürgen,

... sind statische Methoden threadsafe?



Pauschal kann man kein ja oder nein darüber aussagen.
Statische Methoden ohne Parameter sind quasi threadsafe,
es sei denn, sie würden intern wieder auf globale bzw. geschützte
Ressourcen zugreifen. Haben statische Methoden z.B. "ref Parameter",
so kann die Variable ja potentiell von aussen geàndert
werden und somit ist das nicht notwendigerweise eine
threadsichere Angelegenheit. Ohne diese Szenarien könnte
man diese Methoden als quasi reentrant betrachten.


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen