comp.lang.ada
 help / color / mirror / Atom feed
From: Tony Gair <tonygair@blueyonder.co.uk>
Subject: Re: Interest in sockets package development
Date: Mon, 10 Sep 2001 07:59:28 GMT
Date: 2001-09-10T07:59:28+00:00	[thread overview]
Message-ID: <20010910085801.4613629f.tonygair@blueyonder.co.uk> (raw)
In-Reply-To: 9nh3qi$14m6$1@msunews.cl.msu.edu


Hi Chad, 
	I am in the process of making two libraries to represent two socket servers
one listens to a socket, starts a connection (and a new task to keep listening for new
connections). The sockets can pass any variant record type. My intention is for both
the server and the client to react on the receipt of these records.

Whilst it is fairly basic it does fit with tasking quite well and can be used to drive
to drive a user interface and drive events on the server side on an internet application
used in conjunction with GTKada...

Only problem, I am still debugging it and have been going for three weeks, S. Tardieu wrote 
his socket package in a half day. You're welcome for a look
Tony Gair 


On Sun, 9 Sep 2001 21:14:42 -0400
"Chad R. Meiners" <crmeiners@hotmail.com> wrote:

> I have used AdaSockets for previous projects before, but it doesn't scale up
> well since you have to allocate a task per socket due to the sockets
> blocking.  I don't mind dealing with blocking sockets in fact I prefer them
> to non-blocking sockets.  Thus what I really want so is a nice queue I can
> tell my set of sockets to drop an event into the queue so I can block a
> couple worker tasks on the queue instead of having a task per socket.  So
> far I haven't seen any LGPL'd package that does this; therefore, I have
> taken it upon myself to create such a package.  I remember a while back
> someone was complaining about how the available packages for sockets didn't
> scale up well for a large number of sockets.  It had something to do with
> the select function being difficult.  At that point I decided that I was
> going to someday (if I had the time) solve this problem even if it meant I
> had to redesign the socket interface.  So over the months whenever I got
> bored I browsed through the Winsock api's looking for a better way to
> implement a sockets package.   I figured out a nice solution a while back
> but until now I haven't had the time to implement it.  The original point of
> my post was to ask if anyone out there was interested in this development.
> 
> I remember a while back someone pointed to the original sockets package that
> GNAT.Sockets came from; I checked it out and decided that it did not satisfy
> my requirements.  I do not know if this is still true, but since I am a grad
> student I doubt that I will see Gnat(Pro) anytime soon ;)  If someone would
> like to send me the spec files for GNAT.Sockets it might save me a good deal
> of work if it turns I that I would be duplicating effort without adding
> anything new and exciting *grin*
> 
> So let us return to the original subject ...  Does anyone here have any
> interest in a sockets package that handles a large number of sockets
> elegantly?
> 
> -Chad R. Meiners
> 
> 



  parent reply	other threads:[~2001-09-10  7:59 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-09-09  3:47 Interest in sockets package development Chad R. Meiners
2001-09-09  4:48 ` David Botton
2001-09-09 13:41   ` Florian Weimer
2001-09-10 14:21   ` Marin David Condic
     [not found] ` <002901c138ea$bb6d26c0$0100a8c0@DBINSPIRON>
2001-09-09 11:59   ` David C. Hoos, Sr.
     [not found]   ` <05a601c13926$e6f34e50$1600000a@dhoossr>
2001-09-09 14:48     ` David Botton
2001-09-09 18:29       ` Simon Wright
2001-09-09 19:52       ` tmoran
2001-09-10  1:14 ` Chad R. Meiners
2001-09-10  4:28   ` tmoran
2001-09-10  7:41   ` Tony Gair
2001-09-10  7:59   ` Tony Gair [this message]
2001-09-10 14:16 ` Ted Dennison
2001-09-10 19:11   ` Matthew Woodcraft
2001-09-10 21:43   ` Chad R. Meiners
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox