Skip to content

完成 CMP v1 调度、阻塞卸载与原生 TCP 客户端 - #10

Merged
helantianshen merged 17 commits into
mainfrom
feature/phase4-v1-readiness
Aug 29, 2026
Merged

完成 CMP v1 调度、阻塞卸载与原生 TCP 客户端#10
helantianshen merged 17 commits into
mainfrom
feature/phase4-v1-readiness

Conversation

@helantianshen

Copy link
Copy Markdown
Collaborator

概述

  • 收口 Phase 4:补齐通用调度取消、静止点 TaskGroup、可复用手动重置事件,以及可复现的 v1 readiness 压测。
  • 实现 Phase 5 固定大小 ThreadPool:显式 Scheduler、共享 FIFO、协作取消、排空关闭,并记录独立性能基线。
  • 实现 Phase 6A run_blocking():在调用者指定的独立线程池隔离同步工作,并显式返回目标 Scheduler。
  • 实现 Phase 6B 原生异步 TCP client:显式 IoContext、move-only TcpStream、数值 IPv4/IPv6 connect、partial read、write-all、取消、关闭与 shutdown 竞态。
  • 同步三种语言 README/architecture、全部 Design/Plan、示例、HANDOFF 与压测原始数据。

关键边界

  • Asio 1.38.1 仅由 TCP 分区私有导入,公共 API 不暴露 Asio 类型。
  • Phase 6B 不包含 DNS、listener/server、TLS、UDP、文件异步 I/O、timeout、隐式 executor 或 detached work。
  • IoContext 固定一个私有 I/O driver;每个 TCP 操作通过调用者指定的 Scheduler 返回。

本地验证

  • mcpp build --profile dev --strict --cache=off:通过。
  • mcpp test --profile dev --strict --cache=off:10 个二进制,140/140 通过。
  • mcpp build --profile release --strict --cache=off:通过。
  • mcpp test --profile release --strict --cache=off:10 个二进制,140/140 通过。
  • focused Release TCP 竞态门禁:10/10,通过 100 次 close/completion 与 500 次 stop/completion 竞态。
  • examples/basic:全部预期输出一致,退出码 0。
  • readiness Release 压测:连续 5 轮、15 个场景全部 PASS;compute/file/network 每轮非预期失败均为 0。

远程验收

本 PR 以 Linux x86_64、macOS arm64、Windows x86_64 的 build、test、独立示例全部通过为合并前门禁。

@helantianshen
helantianshen merged commit 9492075 into main Aug 29, 2026
3 checks passed
注册 for free to join this conversation on GitHub. Already have an account? 登录 to comment

标签

None yet

项目

None yet

Development

Successfully merging this pull request may close these issues.

1 participant