# Servlets nacheinander abarbeiten



## HannesBacke (31. Mrz 2005)

Hallo,

gibt es einen Weg ein Servlet unter Tomcat so zu programmieren,
dass es bei mehreren Zugriffen, diese hintereinander abarbeitet
und nicht parallel. Grund ist nämlich, dass ich über mein Servlet
eine Applikation starte und wieder stoppe, die aber immer nur
einmal ausgeführt werden kann, da es sonst zu Fehlern kommt,
wenn parallel mehrere Zugriffe stattfinden.
Ich möchte also bei mehreren Anfragen auf das Servlet diese
parken und der Reihe nach abarbeiten.

Danke und Gruß,
Hannes


----------



## Bleiglanz (31. Mrz 2005)

bei älteren Containern kannst du ein Servlet noch in den "Singlethreaded" Modus zwingen

Interface SingleThreadModel

Deprecated. As of Java Servlet API 2.4, with no direct replacement.
public interface SingleThreadModel

=> ab 2.4. laufen Servlets IMMER nebenläufig

mach halt einfach einen synchronized-block rein (ist aber auch eine schlechte Idee....weil...)


----------



## HannesBacke (4. Apr 2005)

Danke für die Antwort, werde es versuchen, aber warum
ist es denn eine schlechte Idee?
Gruß,
Hannes


----------



## Bleiglanz (4. Apr 2005)

weil

... man ja keine Kontrolle darüber hat, was der Servlet-Container so alles mit Threads anstellen wird

und wenn ein fehler im synchronized block auftritt? oder irgenwas blockiert? => dann ist das servlet auf einmal gesperrt (weil der lock nicht mehr aufgegeben wird...)

würde da vorsichtig sein - funktionieren sollte es aber...


----------

