Skip to content

实现协程 TCP 服务端 - #11

Merged
helantianshen merged 3 commits into
mainfrom
feature/phase6c-tcp-server-v1
Aug 30, 2026
Merged

实现协程 TCP 服务端#11
helantianshen merged 3 commits into
mainfrom
feature/phase6c-tcp-server-v1

Conversation

@helantianshen

Copy link
Copy Markdown
Collaborator

概要

  • 在现有 TCP 分区新增 move-only TcpListener,提供懒执行的数值地址 bind()、结构化 accept()close()is_open()local_port()
  • 完善 listener/stream 在取消、关闭、返回 Scheduler 和 IoContext shutdown 竞态下的恰好一次完成与资源所有权。
  • 新增 21 项 TCP server 测试;readiness 网络场景改用 CMP 原生 TcpListener/TcpStream
  • 同步三语 README、架构、benchmark、Phase 6C 文档,并补充 Phase 7 v1 发布验收 Design/Plan。

边界

  • v1 只接受数值 IPv4/IPv6 地址,使用系统最大 backlog。
  • 不增加 DNS、TLS、UDP、socket option、多 pending accept、detached handler 或通用 I/O 抽象。

验证

  • mcpp build --profile dev --strict --cache=off
  • mcpp test --profile dev --strict --cache=off:161/161
  • mcpp build --profile release --strict --cache=off
  • mcpp test --profile release --strict --cache=off:161/161
  • examples/basic 运行及 Release 构建通过
  • src/tcp.cppmtests/tcp_test.cppclang-analyzer-* 检查通过
  • readiness 连续五轮保持预期硬计数且非预期失败为 0

@helantianshen
helantianshen merged commit 02cb6b9 into main Aug 30, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant