bug-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Windows & POSIX


From: Ingolf Steinbach
Subject: Re: Windows & POSIX
Date: Tue, 22 Feb 2005 16:30:11 +0100
User-agent: KMail/1.5.2

Hi Conrad,

On Tuesday 22 February 2005 04:34, Conrad T. Pino wrote:
> How does abstracting all CVS I/O calls for files, pipes
> and sockets sound to you?

Emulating non-blocking I/O (including select()) with Windows
API functions (asynchronous ReadFile()/WriteFile() and
WaitForMultipleObjects()) is a nightmare. For instance
 a) you cannot cancel an asynchronous ReadFile() operation
    and then reliably determine the amount of data already
    read.
 b) cancelling a ReadFile() operation (via CancelIo())
    automatically cancels any other I/O operation on the same
    handle
 c) you cannot determine the amount of data which can be
    read "immediately" (without blocking) for all kinds of
    input sources.
Non-blocking writing has its own problems.

Maybe there is an easy solution for this, but I have not yet
found it.

Kind regards
    Ingolf
-- 

Ingolf Steinbach                       Jena-Optronik GmbH
ingolf.steinbach@jena-optronik.de       ++49 3641 200-147
PGP: 0x7B3B5661  213C 828E 0C92 16B5  05D0 4D5B A324 EC04





reply via email to

[Prev in Thread] Current Thread [Next in Thread]