diff options
| author | eunhhu <[email protected]> | 2026-10-01 08:33:47 +0100 |
|---|---|---|
| committer | eunhhu <[email protected]> | 2026-10-01 08:33:47 +0100 |
| commit | 966b82f0baf8d92e1c16e1767df63cce160fafe1 (patch) | |
| tree | deac9b83e3bed35f2e135495605886e757a72e21 /core/test-module.c | |
| parent | 02aa5c752cb4704c7b8941c2e58acc359034272a (diff) | |
| download | pure-966b82f0baf8d92e1c16e1767df63cce160fafe1.tar.gz pure-966b82f0baf8d92e1c16e1767df63cce160fafe1.zip | |
Say how sends will share one loop, and what it must show (017, 2b)
Each link and each HTTP wire sends on a thread of its own: a host with
twenty outputs runs twenty-one threads more than one without. 2b moves
them into one sending loop: an epoll over the links' UDP sockets and
the wires' TCP sockets with one wake, waiting until the soonest link
timer or wire pause. Links (2b-1) do in the loop what their threads
did each round; wires (2b-2) become a non-blocking HTTP/1.1 client
state machine, with non-blocking steps added to the crypto table for
TLS. A name looked up again still waits where it is, and says so.
Before building: every link, wire, answer and seal check green; a host
of ten links and ten wires two threads above one without; and link and
wire throughput, alternated before and after, no more than 5% lower at
the median (four links together: 10%).
Diffstat (limited to 'core/test-module.c')
0 files changed, 0 insertions, 0 deletions
