<!-- MHonArc v2.4.4 --> <!--X-Subject: [MUD-Dev] Re: Java I/O and threads. --> <!--X-From-R13: Syvf Bbznyrf <cbznyrfNpnvc.ehgtref.rqh> --> <!--X-Date: Mon, 25 Jan 1999 13:39:54 -0800 --> <!--X-Message-Id: Pine.GSO.3.96.990125163742.21147A-100000#arrow,rutgers.edu --> <!--X-Content-Type: text/plain --> <!--X-Reference: 19990125171927.A1348#thelonious,new.ox.ac.uk --> <!--X-Head-End--> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <title>MUD-Dev message, [MUD-Dev] Re: Java I/O and threads.</title> <!-- meta name="robots" content="noindex,nofollow" --> <link rev="made" href="mailto:pomales#caip,rutgers.edu"> </head> <body background="/backgrounds/paperback.gif" bgcolor="#ffffff" text="#000000" link="#0000FF" alink="#FF0000" vlink="#006000"> <font size="+4" color="#804040"> <strong><em>MUD-Dev<br>mailing list archive</em></strong> </font> <br> [ <a href="../">Other Periods</a> | <a href="../../">Other mailing lists</a> | <a href="/search.php3">Search</a> ] <br clear=all><hr> <!--X-Body-Begin--> <!--X-User-Header--> <!--X-User-Header-End--> <!--X-TopPNI--> Date: [ <a href="msg00264.html">Previous</a> | <a href="msg00266.html">Next</a> ] Thread: [ <a href="msg00257.html">Previous</a> | <a href="msg00244.html">Next</a> ] Index: [ <A HREF="author.html#00265">Author</A> | <A HREF="#00265">Date</A> | <A HREF="thread.html#00265">Thread</A> ] <!--X-TopPNI-End--> <!--X-MsgBody--> <!--X-Subject-Header-Begin--> <H1>[MUD-Dev] Re: Java I/O and threads.</H1> <HR> <!--X-Subject-Header-End--> <!--X-Head-of-Message--> <UL> <LI><em>To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI> <LI><em>Subject</em>: [MUD-Dev] Re: Java I/O and threads.</LI> <LI><em>From</em>: Elis Pomales <<A HREF="mailto:pomales#caip,rutgers.edu">pomales#caip,rutgers.edu</A>></LI> <LI><em>Date</em>: Mon, 25 Jan 1999 16:39:46 -0500 (EST)</LI> <LI><em>Reply-To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI> </UL> <!--X-Head-of-Message-End--> <!--X-Head-Body-Sep-Begin--> <HR> <!--X-Head-Body-Sep-End--> <!--X-Body-of-Message--> <PRE> Using pine! cheer! On Mon, 25 Jan 1999, Jo Dillon wrote: > Elis Pomales (pomales#caip,rutgers.edu) spake thusly: > > The current dilemma, is whether I should use threads on a per player (per > > socket) basis, or implement a polling loop and queue player commands, > > handling one command per player per loop cycle. The problem with having a > > thread per player is the context switching overhead. The problem with the > > polling loop is that I have to check each player to see if they have > > input. (There is no select() in Java.) Furthermore, processing one command > > per player may make the system very unresponsive??? Making it seem turn > > based? > > I believe there's no non-blocking I/O either, so as you've foreseen > it wouldn't be a good plan. It could leave the mud locked up indefinitely, > in fact ;) With Java your best bet is one thread per socket, I should think. Yes non-blocking calls can be done by setting So_Linger (I'm at work so don't ask for specifics :) So the question still stands :). > > What solutions have you guys (and gals?) employed in your servers? > > I guess one way to use the polling loop would be to keep each command as > > small as possible... > > > > PS. I would still use more threads, one for NPC's and one for the game > > world. > > > > PSS. Is having 100+ threads really that bad? (I would think so) > > Not necessarily - it depends on your hardware and OS. Java's designed > to use lots of threads so it's not too much of a worry. Yes maybe, but if the threads are native threads then we are really running into context switches... > -- > Jo > </PRE> <!--X-Body-of-Message-End--> <!--X-MsgBody-End--> <!--X-Follow-Ups--> <HR> <!--X-Follow-Ups-End--> <!--X-References--> <UL><LI><STRONG>References</STRONG>: <UL> <LI><STRONG><A NAME="00254" HREF="msg00254.html">[MUD-Dev] Re: Java I/O and threads.</A></STRONG> <UL><LI><EM>From:</EM> Jo Dillon <emily#thelonious,new.ox.ac.uk></LI></UL></LI> </UL></LI></UL> <!--X-References-End--> <!--X-BotPNI--> <UL> <LI>Prev by Date: <STRONG><A HREF="msg00264.html">[MUD-Dev] Re: PvP and mob capacities (was "List Peerage")</A></STRONG> </LI> <LI>Next by Date: <STRONG><A HREF="msg00266.html">[MUD-Dev] Telmaron and Mud servers was: Re: META: list "peerage"</A></STRONG> </LI> <LI>Prev by thread: <STRONG><A HREF="msg00257.html">[MUD-Dev] Re: Java I/O and threads.</A></STRONG> </LI> <LI>Next by thread: <STRONG><A HREF="msg00244.html">[MUD-Dev] ADMIN: We're working again.</A></STRONG> </LI> <LI>Index(es): <UL> <LI><A HREF="index.html#00265"><STRONG>Date</STRONG></A></LI> <LI><A HREF="thread.html#00265"><STRONG>Thread</STRONG></A></LI> </UL> </LI> </UL> <!--X-BotPNI-End--> <!--X-User-Footer--> <!--X-User-Footer-End--> <ul><li>Thread context: <BLOCKQUOTE><UL> <LI><strong><A NAME="00251" HREF="msg00251.html">[MUD-Dev] Java I/O and threads.</A></strong>, Elis Pomales <a href="mailto:pomales#caip,rutgers.edu">pomales#caip,rutgers.edu</a>, Mon 25 Jan 1999, 15:19 GMT <UL> <LI><strong><A NAME="00254" HREF="msg00254.html">[MUD-Dev] Re: Java I/O and threads.</A></strong>, Jo Dillon <a href="mailto:emily#thelonious,new.ox.ac.uk">emily#thelonious,new.ox.ac.uk</a>, Mon 25 Jan 1999, 17:19 GMT <UL> <LI><strong><A NAME="00255" HREF="msg00255.html">[MUD-Dev] Re: Java I/O and threads.</A></strong>, cynbe <a href="mailto:cynbe#muq,org">cynbe#muq,org</a>, Mon 25 Jan 1999, 18:12 GMT <UL> <LI><strong><A NAME="00257" HREF="msg00257.html">[MUD-Dev] Re: Java I/O and threads.</A></strong>, Jo Dillon <a href="mailto:emily#thelonious,new.ox.ac.uk">emily#thelonious,new.ox.ac.uk</a>, Mon 25 Jan 1999, 19:04 GMT </LI> </UL> </LI> <LI><strong><A NAME="00265" HREF="msg00265.html">[MUD-Dev] Re: Java I/O and threads.</A></strong>, Elis Pomales <a href="mailto:pomales#caip,rutgers.edu">pomales#caip,rutgers.edu</a>, Mon 25 Jan 1999, 21:39 GMT </LI> </UL> </LI> </UL> </LI> <LI><strong><A NAME="00244" HREF="msg00244.html">[MUD-Dev] ADMIN: We're working again.</A></strong>, J C Lawrence <a href="mailto:claw#kanga,nu">claw#kanga,nu</a>, Mon 25 Jan 1999, 01:49 GMT <LI><strong><A NAME="00237" HREF="msg00237.html">[MUD-Dev] Re: Mugu</A></strong>, Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Thu 21 Jan 1999, 02:42 GMT <LI><strong><A NAME="00236" HREF="msg00236.html">[MUD-Dev] Re: Graphic design doc</A></strong>, Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Thu 21 Jan 1999, 02:31 GMT <LI><strong><A NAME="00223" HREF="msg00223.html">[MUD-Dev] Re: META: list "peerage"</A></strong>, Koster, Raph <a href="mailto:rkoster#origin,ea.com">rkoster#origin,ea.com</a>, Thu 21 Jan 1999, 00:06 GMT </LI> </UL></BLOCKQUOTE> </ul> <hr> <center> [ <a href="../">Other Periods</a> | <a href="../../">Other mailing lists</a> | <a href="/search.php3">Search</a> ] </center> <hr> </body> </html>