>>>>> "DN" == Damien Neil <[EMAIL PROTECTED]> writes:
DN> On Thu, Sep 20, 2001 at 04:57:44PM -0400, Dan Sugalski wrote:
>> >For clarification: do you mean async I/O, or non-blocking I/O?
>>
>> Async. When the interpreter issues a read, for example, it won't assume the
>> read completes immediately.
DN> That sounds like what I would call non-blocking I/O. Async I/O
DN> would involve syscalls like aio_read().
you can't do non-blocking i/o on files without aio_read type calls. but
what dan is saying is that the api the interpreter uses internally will
be an async one. it will either use native/POSIX aio calls or simulate
that with sync calls and callbacks or possibly with threads.
DN> I'm being a bit pedantic here because I've been involved in heated
DN> debates in the past, which were resolved when the two sides realized
DN> that they were using different definitions of async I/O. :>
pipe, socket and char device async i/o is different from file async
i/o. with pipes you are told when your request will work and then you
make it. with files you make the request and then get told when it was
done. both use callbacks and can be integrated under one async api. this
api is what parrot will see and a sync api will be layered on top of
this.
the async i/o will be tied to the event system for timeouts and safe
signals and such.
uri
--
Uri Guttman --------- [EMAIL PROTECTED] ---------- http://www.sysarch.com
SYStems ARCHitecture and Stem Development ------ http://www.stemsystems.com
Search or Offer Perl Jobs -------------------------- http://jobs.perl.org