Deutsch   English   Français   Italiano  
<vr299n$25gok$1@dont-email.me>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!weretis.net!feeder9.news.weretis.net!news.quux.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail
From: "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com>
Newsgroups: comp.lang.c
Subject: Re: Python recompile
Date: Fri, 14 Mar 2025 15:06:47 -0700
Organization: A noiseless patient Spider
Lines: 40
Message-ID: <vr299n$25gok$1@dont-email.me>
References: <vq1qas$j22$1@gallifrey.nk.ca> <20250309012626.00001276@yahoo.com>
 <vqiugc$dv5o$2@dont-email.me> <vql9fu$vluh$1@dont-email.me>
 <vqlfrj$10rr4$2@dont-email.me> <vqli6g$114cj$3@dont-email.me>
 <vqm0b9$179ca$1@dont-email.me> <vqnfvp$1gsl4$2@dont-email.me>
 <20250310135828.116@kylheku.com> <vqnkdq$1gsl4$6@dont-email.me>
 <vqnmbn$1i1s0$6@dont-email.me> <vqnmig$1ie8j$2@dont-email.me>
 <vqns51$1jibk$5@dont-email.me> <vqo5hd$1lant$1@dont-email.me>
 <vqo9df$1ls6a$2@dont-email.me> <vqoe8o$1qblf$1@dont-email.me>
 <vqolqv$1rfnf$5@dont-email.me> <vqq8v2$262gq$1@dont-email.me>
 <vqqf3r$273mt$6@dont-email.me> <vqqjra$286h8$2@dont-email.me>
 <vqqlff$28fls$7@dont-email.me> <vqqtjv$2a3dv$1@dont-email.me>
 <vqqu21$2a18r$3@dont-email.me> <vqr25u$2eit2$1@dont-email.me>
 <vqras6$2fsqk$1@dont-email.me> <vqtq8v$33itc$1@dont-email.me>
 <vqvfl6$3rsid$2@dont-email.me> <vqvqmq$49pc$1@dont-email.me>
 <vr01sp$9jrt$2@dont-email.me> <vr212d$1uc77$1@dont-email.me>
 <vr26ih$23hho$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Fri, 14 Mar 2025 23:06:48 +0100 (CET)
Injection-Info: dont-email.me; posting-host="20df43b50ab9261545a619b97260a04e";
	logging-data="2278164"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX18aXnZmvRz0Dwl72f/4q1Jynu6gfeH5ODc="
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:Skquc+D8IrapmZIYUfDm1eLRQdI=
In-Reply-To: <vr26ih$23hho$1@dont-email.me>
Content-Language: en-US
Bytes: 3782

On 3/14/2025 2:20 PM, Lawrence D'Oliveiro wrote:
> On Fri, 14 Mar 2025 12:46:21 -0700, Chris M. Thomasson wrote:
> 
>> On 3/13/2025 6:48 PM, Lawrence D'Oliveiro wrote:
>>
>>> On Thu, 13 Mar 2025 16:45:28 -0700, Chris M. Thomasson wrote:
>>>
>>>> I have no idea how the Python dev's use IOCP with sockets.
>>>
>>> They can’t figure out a way to support file I/O notifiers (of the kind
>>> commonly used with event loops) with it. If you know of a way to do it,
>>> please tell us.
>>
>> Well, usually, iirc, been a while, when GQCSEX returns we take the
>> WSAOVERLAPPED and convert it to our extended structure. Basically
>> similar to how Linux uses offsetof to extend node structures, or on
>> Windows CONTAINING_RECORD, then we can use that to pass into a function
>> called on_read, on_write, on_accept, on_connect, ect... type of
>> functions.
> 
> Does that require explicitly queuing a read or a write operation?
> 
> According to the platform support notes
> <https://docs.python.org/3/library/asyncio-platforms.html>,
> ProactorEventLoop does not allow the addition of reader/writer callbacks
> for caller-supplied file descriptors.
> 
> Remember what these callbacks do: they notify that the FD will accept a
> read or a write, not that a pending read or write has completed.

Well, I still don't know how Python is implementing things. To busy with 
some other work to even take a look right now. Field related, fwiw here 
is one of my experiments:

https://youtu.be/ygmp_XvdaqQ

Keep in mind that successful IOCP means the completion of an io action 
has occurred, or an error has been raised. It could be a new connection, 
a buffer was sent, data has been read. That is the C (completion) in 
IOCP, see?