Path: usenet.cis.ufl.edu!usenet.eel.ufl.edu!news.mathworks.com!newsfeed.internetmci.com!psgrain!nntp.teleport.com!usenet From: js@biu.icnet.uk ( BIU) Newsgroups: comp.lang.perl.announce,comp.lang.perl.misc Subject: EventDriven Server now FREEWARE (version 2.1) Followup-To: comp.lang.perl.misc Date: 10 Aug 1995 14:39:46 GMT Organization: Imperial Cancer Research Fund Lines: 47 Approved: merlyn@stonehenge.com (comp.lang.perl.announce) Message-ID: <40d5ni$rg5@maureen.teleport.com> NNTP-Posting-Host: linda.teleport.com X-Disclaimer: The "Approved" header verifies header information for article transmission and does not imply approval of content. Xref: usenet.cis.ufl.edu comp.lang.perl.announce:100 comp.lang.perl.misc:3381 I'm pleased to announce that the copyright issues surrounding the EventDriven Server have now been resolved. The EventDriven Server is now freeware, distributed under the same terms as Perl. Version 2.1 includes an explicit copyright statement to that effect. The latest version (2.1) of my EventDriven Server is now available via ftp://ftp.icnet.uk/icrf-public/biu/perlmods/JACKS.html The Server::Server::EventDriven module: The event driven server is NOT specifically a network client or server. It allows any type of i/o whether this is IP, UNIX socket, plain file handle or whatever. It is designed to be able to handle multiple domains. It is the bare bones to allow you to easily have a process handling multiple different things. It basically provides for functions to be triggered on any of i/o, timed events, signals, or user-defined events. You can specify a function to be called when input or output (or either) is possible on any filehandle, or when a timeout occurs, or regularly at a set interval, or when a signal is received, or when a user-defined event is added to the event queue. In fact, any set of these simultaneously - all these events are checked for continuously, and any one occurring triggers a function specified by the user. You can tell it to do something like the following: every 10 seconds execute function 'a' AND if there is input pending on filehandle B call function 'c' AND if I receive signal C call function 'd' AND in 3.4 seconds execute function 'e' AND execute function 'f' when the child process 5555 dies AND ... Full documentation is included. HTML and man pages can be generated using the pod2html and pod2man programs, and are also included with the distribution. -- Jack js@biu.icnet.uk If you only have a hammer, you tend to see every problem as a nail. -- Maslow