Skip to content

Homework/02 multithreading - #126

Open
gbx-cyber2 wants to merge 2 commits into
eesast:homework/02-multithreadingfrom
gbx-cyber2:homework/02-multithreading
Open

Homework/02 multithreading#126
gbx-cyber2 wants to merge 2 commits into
eesast:homework/02-multithreadingfrom
gbx-cyber2:homework/02-multithreading

Conversation

@gbx-cyber2

Copy link
Copy Markdown

暑培:队式作业提交

基本信息

  • 姓名:龚伯熙
  • 班级:笃实56
  • 学号:2025013077

提交说明

Copilot AI lite review requested due to automatic review settings August 28, 2026 08:11
@mergify mergify Bot added the homework Homework PR, will not be merged label Aug 28, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

本次 PR 为 02-multithreading 作业提交,在 01-basic 的日志解析基础上,补全了多线程日志分析器的核心实现,并完善了本地 CLI 交互与作业报告文档。

Changes:

  • 补全 LineParserrequest/internal 两类日志的解析,并完善对应 LogEntry 的 Visitor 分发与 Key-Value 输出。
  • 实现线程安全的 WorkQueue<T>,并在 LogFileAnalyzer 中使用多线程并行解析多个日志文件、缓存分析结果。
  • 补全 LocalCli 的展示/分析/查询分析结果等交互逻辑,并添加作业报告与截图资源。

Reviewed changes

Copilot reviewed 8 out of 10 changed files in this pull request and generated no comments.

Show a summary per file
File Description
src/LogParser/Parser/LineParser.cs 实现 request/internal 日志反序列化与异常字段拆分逻辑
src/LogParser/Models/LogEntries.cs 补全 Accept 方法以支持 Visitor 模式分发
src/LogParser/Visitors/KeyValueVisitor.cs 为 request/internal 补全 Dump 输出字段
src/LogAnalyzer/WorkQueue.cs 实现基于 lock + Monitor 的线程安全队列与结束放入语义
src/LogAnalyzer/LogFileAnalyzer.cs 实现并行 worker 线程解析、结果写回与 _isAnalyzing 状态管理
src/LocalCli/Program.cs 补全 CLI 菜单功能:列文件、分析指定/全部、打印分析结果
docs/01-basic/report.md 添加 01-basic 作业报告
docs/02-multithreading/report.md 添加 02-multithreading 作业报告与说明
docs/02-multithreading/assets/localcli-full.png 添加 CLI 功能截图资源
docs/02-multithreading/assets/localcli-robustness.png 添加 CLI 鲁棒性测试截图资源

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

homework Homework PR, will not be merged

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants