WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   Java-Threads - Frage (http://www.wcm.at/forum/showthread.php?t=35627)

cherry 09.11.2001 13:06

Java-Threads - Frage
 
Hi !

Ich hab da ne allgemeine Frage zu Javaprogrammen, auf die gleichzeitig von mehreren Leuten gleichzeitig zugegriffen werden kann.

Also nehmen wir an ich hab einen Chat-Server laufen mit

Zeile1: a=10;
Zeile20: a=20;
Zeile30: a=30;

Kann es passieren, daß mehrere User gleichzeitig auf den Server zugreifen und der eine z.b. bei zeile 1 ist und der andere bei zeile 30 und sie sich die variablen gegenseitig überschreiben ?
Oder wird immer einer abgearbeitet und erst dann ein anderer user ins programm gelassen ?

Im konkreten fall habe ich für jeden chatuser einen client-thread, der auf den server zugreift (server existiert für alle user zusammen nur einmal)

Können dann mehrere Client-Threads gleichzeitig auf den server zugreifen und sich variablen gegenseitig überschreiben ?
Oder werden alle anfragen der client-threads hintereinander im server abgearbeitet ?

Ich konnte nirgends was konkretes zu dem thema finden.

_m3 09.11.2001 13:49

Hmmm. ich werd aus der Beschreibung nicht ganz schlau....

Hast Du nun[list=a][*]Einen nicht "gethreadedten" Server und Java-Applets auf den Client.[*]Einen "gethreadedten" Server, der für jede Client-Connection einen Thread aufmacht?[/list=a]
Bei (a) kann Probleme geben, bei (b) muss es nicht sein, kommt drauf an, ob das Ganze ordentlich programmiert ist.

cherry 09.11.2001 14:45

okay, also:
Ich hab ein C++ - Chatprogramm unter Windows, das eine Connection zum Chatserver-Port macht.

Der Server öffnet jetzt für jede Connection vom chatprogramm einen eigenen Client-thread. (also jedes chatprogramm bekommt einen eigenen client-thread.)

Und diese Client-Threads empfangen den text, der vom windows-chatprogramm kommt, leiten ihn an den server weiter und auch umgekehrt.


Und was ich wissen will ist, ob die client-threads GLEICHZEITIG mit dem server kommunizieren, oder immer nur einer nach dem anderen, also

z.b. ob theoretisch zwei client-threads gleichzeitig auf ein und dieselbe variable vom server zugreifen können oder ob zuerst client-thread 1 zugreift und erst wenn er fertig ist client-thread 2 darauf zugreift.

_m3 09.11.2001 14:51

Kommt drauf an, wie der Server implementiert ist. :D

Sorry, aber genauer kann ich das nicht sagen. Gefühlsmässig würde ich sagen, er macht Round Robin.

cherry 09.11.2001 15:18

also werden die threads wohl eher hintereinander als gleichzeitig ausgeführt...


Alle Zeitangaben in WEZ +2. Es ist jetzt 09:46 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag