1999Q1/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: [MUD&#45;Dev] Re: Java I/O and threads. -->
<!--X-From-R13: Xb Rvyyba <rzvylNgurybavbhf.arj.bk.np.hx> -->
<!--X-Date: Mon, 25 Jan 1999 09:19:37 &#45;0800 -->
<!--X-Message-Id: 19990125171927.A1348#thelonious,new.ox.ac.uk -->
<!--X-Content-Type: text/plain -->
<!--X-Reference: Pine.GSO.3.96.990125100748.20890A&#45;100000#arrow,rutgers.edu -->
<!--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:emily#thelonious,new.ox.ac.uk">
</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>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
<br clear=all><hr>
<!--X-Body-Begin-->
<!--X-User-Header-->
<!--X-User-Header-End-->
<!--X-TopPNI-->

Date:&nbsp;
[&nbsp;<a href="msg00253.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00255.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg00251.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00255.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#00254">Author</A>
&nbsp;|&nbsp;<A HREF="#00254">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#00254">Thread</A>
&nbsp;]

<!--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>: Jo Dillon &lt;<A HREF="mailto:emily#thelonious,new.ox.ac.uk">emily#thelonious,new.ox.ac.uk</A>&gt;</LI>
<LI><em>Date</em>: Mon, 25 Jan 1999 17:19:27 +0000</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>
Elis Pomales (pomales#caip,rutgers.edu) spake thusly:
&gt; The current dilemma, is whether I should use threads on a per player (per
&gt; socket) basis, or implement a polling loop and queue player commands,
&gt; handling one command per player per loop cycle. The problem with having a
&gt; thread per player is the context switching overhead. The problem with the
&gt; polling loop is that I have to check each player to see if they have
&gt; input. (There is no select() in Java.) Furthermore, processing one command
&gt; per player may make the system very unresponsive??? Making it seem turn
&gt; 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.
 
&gt; What solutions have you guys (and gals?) employed in your servers? 
&gt; I guess one way to use the polling loop would be to keep each command as
&gt; small as possible...
&gt; 
&gt; PS. I would still use more threads, one for NPC's and one for the game
&gt; world.
&gt; 
&gt; 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.

-- 
	Jo




</PRE>

<!--X-Body-of-Message-End-->
<!--X-MsgBody-End-->
<!--X-Follow-Ups-->
<HR>
<ul compact><li><strong>Follow-Ups</strong>:
<ul>
<li><strong><A NAME="00265" HREF="msg00265.html">[MUD-Dev] Re: Java I/O and threads.</A></strong>
<ul compact><li><em>From:</em> Elis Pomales &lt;pomales#caip,rutgers.edu&gt;</li></ul>
<li><strong><A NAME="00255" HREF="msg00255.html">[MUD-Dev] Re: Java I/O and threads.</A></strong>
<ul compact><li><em>From:</em> cynbe#muq,org</li></ul>
</UL></LI></UL>
<!--X-Follow-Ups-End-->
<!--X-References-->
<UL><LI><STRONG>References</STRONG>:
<UL>
<LI><STRONG><A NAME="00251" HREF="msg00251.html">[MUD-Dev] Java I/O and threads.</A></STRONG>
<UL><LI><EM>From:</EM> Elis Pomales &lt;pomales#caip,rutgers.edu&gt;</LI></UL></LI>
</UL></LI></UL>
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00253.html">[MUD-Dev] Reset Death</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00255.html">[MUD-Dev] Re: Java I/O and threads.</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00251.html">[MUD-Dev] Java I/O and threads.</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00255.html">[MUD-Dev] Re: Java I/O and threads.</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00254"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00254"><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>[MUD-Dev] Re: Reset Death</STRONG>, <EM>(continued)</EM>
<ul compact>
<LI><strong><A NAME="00261" HREF="msg00261.html">[MUD-Dev] Re: Reset Death</A></strong>, 
Mik Clarke <a href="mailto:mikclrk#ibm,net">mikclrk#ibm,net</a>, Mon 25 Jan 1999, 20:35 GMT
<UL>
<LI><strong><A NAME="00269" HREF="msg00269.html">[MUD-Dev] Re: Reset Death</A></strong>, 
Andrew C.M. McClintock <a href="mailto:andrewm#MAIL,HSC.EDU">andrewm#MAIL,HSC.EDU</a>, Mon 25 Jan 1999, 22:27 GMT
<UL>
<LI><strong><A NAME="00290" HREF="msg00290.html">[MUD-Dev] Re: Reset Death</A></strong>, 
Mik Clarke <a href="mailto:mikclrk#ibm,net">mikclrk#ibm,net</a>, Tue 26 Jan 1999, 20:52 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
</ul>
</LI>
<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
</UL></BLOCKQUOTE>

</ul>
<hr>
<center>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
</center>
<hr>
</body>
</html>