From: sjw <simon.j.wright@mac.com>
Subject: Re: API design problem - buffer scatter I/O
Date: Sat, 22 Nov 2008 08:54:47 -0800 (PST)
Date: 2008-11-22T08:54:47-08:00 [thread overview]
Message-ID: <7d7f214a-9060-483f-977f-a5305ed8be48@v15g2000yqn.googlegroups.com> (raw)
In-Reply-To: f980d11e-4113-41a8-9c24-bf2df53e18f8@a12g2000yqm.googlegroups.com
On Nov 22, 4:05 pm, Maciej Sobczak <see.my.homep...@gmail.com> wrote:
> I have a problem finding the best, from the Ada point of view,
> interface for the scatter I/O API.
There is a binding in GCC 4.3.0 - Receive_Vector and Send_Vector. Not
sure when this was introduced - wasn't in GNAT 3.16.
I don't know how scatter-gather is canonically intended to be used,
but one way that it would have been nice to use were we not stuck on a
historic version of the compiler would be to cope with application-
specific message headers - these are all 20 bytes, so we could have
had a 20-byte header buffer and a channel-specific message buffer to
great advantage. As it is, on TCP_NODELAY & UDP sockets, we have to:
(a) prepare the message
(b) prepare the header (including fields depending on the message)
(c) concatenate the header and the message
(d) send the message.
Not cool.
next prev parent reply other threads:[~2008-11-22 16:54 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-11-22 16:05 API design problem - buffer scatter I/O Maciej Sobczak
2008-11-22 16:54 ` sjw [this message]
2008-11-22 19:43 ` george.priv
2008-11-22 22:16 ` Robert A Duff
2008-11-22 23:34 ` Maciej Sobczak
2008-11-23 0:01 ` Robert A Duff
2008-11-24 8:10 ` Brad Moore
2008-11-24 7:55 ` christoph.grein
2008-11-24 20:03 ` Robert A Duff
2008-11-25 5:59 ` christoph.grein
2008-11-25 8:34 ` Dmitry A. Kazakov
2008-11-25 14:25 ` Robert A Duff
2008-11-25 22:20 ` Randy Brukardt
2008-11-24 21:23 ` Robert A Duff
2008-11-22 23:01 ` Georg Bauhaus
2008-11-23 5:57 ` anon
2008-11-24 17:16 ` tmoran
2008-11-26 8:34 ` Maciej Sobczak
2008-11-26 20:39 ` sjw
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox