1998Q3/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: [MUD&#45;Dev] Re: [CODE] [LANGUAGE/PLATFORM SPECIFIC] My Event Engine -->
<!--X-From-R13: Ayvire Xbjrgg <byvireNwbjrgg.znanjngh.cynarg.pb.am> -->
<!--X-Date: Mon, 20 Jul 1998 14:51:27 &#45;0700 -->
<!--X-Message-Id: Pine.LNX.3.96.980721093627.512E&#45;100000#andridys,ip.local -->
<!--X-Content-Type: text/plain -->
<!--X-Reference: Pine.PMDF.3.95.980720111347.541200780A&#45;100000#nova,wright.edu -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, [MUD-Dev] Re: [CODE] [LANGUAGE/PLATFORM SPECIFIC] My Event Eng</title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:oliver#jowett,manawatu.planet.co.nz">
</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="msg00272.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00274.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg00269.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00277.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#00273">Author</A>
&nbsp;|&nbsp;<A HREF="#00273">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#00273">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>[MUD-Dev] Re: [CODE] [LANGUAGE/PLATFORM SPECIFIC] My Event Engine</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>" &lt;<A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A>&gt;</LI>
<LI><em>Subject</em>: [MUD-Dev] Re: [CODE] [LANGUAGE/PLATFORM SPECIFIC] My Event Engine</LI>
<LI><em>From</em>: Oliver Jowett &lt;<A HREF="mailto:oliver#jowett,manawatu.planet.co.nz">oliver#jowett,manawatu.planet.co.nz</A>&gt;</LI>
<LI><em>Date</em>: Tue, 21 Jul 1998 09:47:48 +1200 (NZST)</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>
On Mon, 20 Jul 1998 s001gmu#nova,wright.edu wrote:

&gt; On Sat, 18 Jul 1998 oliver#jowett,manawatu.planet.co.nz wrote:
&gt; 
&gt; &gt; Why not move this to a separate layer? At the lowest level, select() on
&gt; &gt; ALL sockets with a timeout equal to the time to next pending event. When
&gt; &gt; input arrives, read and buffer; when output is possible, write from a
&gt; &gt; buffer; when exceptions occur, set an appropriate flag. Loop back and
&gt; &gt; repeat the select. Then when the event actually goes off, you check and
&gt; &gt; modify the buffers.
&gt; 
&gt; This works nicely, as long as you have a tick based event queue.  The
&gt; model I use is based on the system clock, and uses a linked list as the
&gt; main structure.  With one cpu, it is physically quite impossible to
&gt; schedule two events at exactly the same time (and with multiple it is
&gt; quite unlikely), so I don't need any auxiliary linked lists to handle
&gt; collisions.  The problem is that my event driver sleeps until the next
&gt; event is scheduled to go off, OR another event is placed first in the
&gt; list.  If the later happens, not only would I have to wake up the event
&gt; driver, but I'd also have to interrupt the select, and then reschedule it
&gt; with a new timeout.

I'm not quite clear about how your timing system works - it sounds like a
"tick-based" system which has a much finer (and externally-run, although
that shouldn't affect much) timing resolution? 

If you're working with a single thread - how do events get added without
either I/O occuring or an event happening first? Signals, I guess. 
Personally I avoid using signals for anything short of exceptional
external circumstances where possible :)

With multiple threads I'm not quite sure why you'd want to have the event
system timing tied into I/O waits anyway.

-O



</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="00277" HREF="msg00277.html">[MUD-Dev] Re: [CODE] [LANGUAGE/PLATFORM SPECIFIC] My Event Engine</A></strong>
<ul compact><li><em>From:</em> s001gmu#nova,wright.edu</li></ul>
</UL></LI></UL>
<!--X-Follow-Ups-End-->
<!--X-References-->
<UL><LI><STRONG>References</STRONG>:
<UL>
<LI><STRONG><A NAME="00269" HREF="msg00269.html">[MUD-Dev] Re: [CODE] [LANGUAGE/PLATFORM SPECIFIC] My Event Engine</A></STRONG>
<UL><LI><EM>From:</EM> s001gmu#nova,wright.edu</LI></UL></LI>
</UL></LI></UL>
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00272.html">[MUD-Dev] Re: DBMS in MU*'s</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00274.html">[MUD-Dev] Re: DBMS in MU*'s</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00269.html">[MUD-Dev] Re: [CODE] [LANGUAGE/PLATFORM SPECIFIC] My Event Engine</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00277.html">[MUD-Dev] Re: [CODE] [LANGUAGE/PLATFORM SPECIFIC] My Event Engine</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00273"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00273"><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: [CODE] [LANGUAGE/PLATFORM SPECIFIC] My Event Engine</STRONG>, <EM>(continued)</EM>
<ul compact>
<LI><strong><A NAME="00661" HREF="msg00661.html">[MUD-Dev] Re: [CODE] [LANGUAGE/PLATFORM SPECIFIC] My Event Engine</A></strong>, 
J C Lawrence <a href="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</a>, Tue 11 Aug 1998, 17:32 GMT
</LI>
<LI><strong><A NAME="00248" HREF="msg00248.html">[MUD-Dev] Re: [CODE] [LANGUAGE/PLATFORM SPECIFIC] My Event Engine</A></strong>, 
Todd Lair <a href="mailto:tlair#mailzone,com">tlair#mailzone,com</a>, Sat 18 Jul 1998, 05:18 GMT
<UL>
<LI><strong><A NAME="00249" HREF="msg00249.html">[MUD-Dev] Re: [CODE] [LANGUAGE/PLATFORM SPECIFIC] My Event Engine</A></strong>, 
oliver <a href="mailto:oliver#jowett,manawatu.planet.co.nz">oliver#jowett,manawatu.planet.co.nz</a>, Sat 18 Jul 1998, 06:27 GMT
<UL>
<LI><strong><A NAME="00269" HREF="msg00269.html">[MUD-Dev] Re: [CODE] [LANGUAGE/PLATFORM SPECIFIC] My Event Engine</A></strong>, 
s001gmu <a href="mailto:s001gmu#nova,wright.edu">s001gmu#nova,wright.edu</a>, Mon 20 Jul 1998, 15:57 GMT
<UL>
<LI><strong><A NAME="00273" HREF="msg00273.html">[MUD-Dev] Re: [CODE] [LANGUAGE/PLATFORM SPECIFIC] My Event Engine</A></strong>, 
Oliver Jowett <a href="mailto:oliver#jowett,manawatu.planet.co.nz">oliver#jowett,manawatu.planet.co.nz</a>, Mon 20 Jul 1998, 21:51 GMT
<UL>
<LI><strong><A NAME="00277" HREF="msg00277.html">[MUD-Dev] Re: [CODE] [LANGUAGE/PLATFORM SPECIFIC] My Event Engine</A></strong>, 
s001gmu <a href="mailto:s001gmu#nova,wright.edu">s001gmu#nova,wright.edu</a>, Tue 21 Jul 1998, 13:49 GMT
<UL>
<LI><strong><A NAME="00300" HREF="msg00300.html">[MUD-Dev] Re: [CODE] [LANGUAGE/PLATFORM SPECIFIC] My Event Engine</A></strong>, 
Joel Kelso <a href="mailto:joel#ee,uwa.edu.au">joel#ee,uwa.edu.au</a>, Wed 22 Jul 1998, 02:21 GMT
<UL>
<LI><strong><A NAME="00305" HREF="msg00305.html">[MUD-Dev] Re: [CODE] [LANGUAGE/PLATFORM SPECIFIC] My Event Engine</A></strong>, 
s001gmu <a href="mailto:s001gmu#nova,wright.edu">s001gmu#nova,wright.edu</a>, Wed 22 Jul 1998, 13:30 GMT
</LI>
<LI><strong><A NAME="00311" HREF="msg00311.html">[MUD-Dev] Re: [CODE] [LANGUAGE/PLATFORM SPECIFIC] My Event Engine</A></strong>, 
J C Lawrence <a href="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</a>, Wed 22 Jul 1998, 17:54 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</ul>
</LI>
</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>