aboutsummaryrefslogtreecommitdiff
path: root/src/zenhttp/servers/httpsys.cpp
diff options
context:
space:
mode:
authorStefan Boberg <[email protected]>2026-04-03 16:26:54 +0200
committerStefan Boberg <[email protected]>2026-04-03 16:26:54 +0200
commit68f033f2680c9efb7eb31f738247a98183300661 (patch)
treeef28c8bca84534c46662e83d42079182369517c1 /src/zenhttp/servers/httpsys.cpp
parentMerge branch 'sb/compute-oidc-auth' of https://github.ol.epicgames.net/ue-fou... (diff)
downloadzen-68f033f2680c9efb7eb31f738247a98183300661.tar.xz
zen-68f033f2680c9efb7eb31f738247a98183300661.zip
Add async ASIO I/O path for Horde agent connections
Replace the blocking thread-per-component model (5 threads per agent) with an optional shared io_context + callback-based async I/O path, toggled via HordeConfig::UseAsyncIo. New async classes added alongside existing sync ones: - AsyncTcpComputeTransport: async connect/read/write on shared io_context - AsyncAesComputeTransport: async AES-256-GCM wrapper - AsyncComputeSocket: async frame multiplexer with recv pump, send queue, ping timer - AsyncAgentMessageChannel: callback-based message protocol with timeout support - AsyncHordeAgent: state machine driving the full agent lifecycle Provisioner changes: - Shared io_context with 3 worker threads (only when UseAsyncIo=true) - ThreadAgent forks to async path after HTTP provisioning - Async agents clean up via completion callbacks
Diffstat (limited to 'src/zenhttp/servers/httpsys.cpp')
0 files changed, 0 insertions, 0 deletions