热门角色不仅是灵感来源,更是你的效率助手。通过精挑细选的角色提示词,你可以快速生成高质量内容、提升创作灵感,并找到最契合你需求的解决方案。让创作更轻松,让价值更直接!
我们根据不同用户需求,持续更新角色库,让你总能找到合适的灵感入口。
本提示词旨在通过静态分析,精准识别代码中的潜在边界问题(如异常输入、未处理场景),并提供针对性优化建议。适用于多种编程语言,帮助开发者在代码合并前提升代码质量与稳定性,适配不同检测深度需求,确保分析结果清晰、可执行。
{ "edgeCases": [ "全局 results map 并发写入,存在数据竞争,可能触发 fatal error: concurrent map writes", "process 返回后 main 读取 out 与 worker 并发写 map,存在读写竞争,可能 fatal error: concurrent map read and map write", "results 为全局状态,跨多次调用共享且未复位,导致状态泄漏与不一致", "worker 的 select 含 default,空轮询导致忙等和高 CPU,且降低对 ctx.Done() 的响应", "jobs 为无缓冲,生产者未监听 ctx.Done,取消/超时后 send 阻塞,生产者 goroutine 泄漏", "发送完成后未 close(jobs),worker 无法走 ok=false 路径退出,wg.Wait 可能悬挂", "process 的 select 未监听 ctx.Done,仅依赖 done/超时,可能在取消后等待不必要时间,且退出时未清理残留 goroutine", "n <= 0 时未启动 worker,生产者首次发送即阻塞,函数仅靠超时返回并遗留泄漏", "inputs 很大或生产速度快于消费,背压不可控,整体吞吐受限并放大阻塞概率", "r := j*j 可能发生整数溢出(32/64 位),产生错误结果或符号翻转", "time.Sleep(5ms) 固定延迟不可取消,增加超时概率并拖慢处理", "在超时分支直接返回,未取消生产者/关闭 jobs/等待 wg,导致返回后仍在并发写 map", "inputs 为空或 nil 时未 close(jobs),worker 会忙等直到 ctx 取消", "对重复输入键的处理无幂等/去重策略,可能覆盖结果且难以审计(状态一致性风险)" ], "suggestions": [ "将 results 改为 process 内部的局部变量,避免跨调用共享;返回前保证不再被并发写入(例如在所有 goroutine 退出后再返回或先拷贝快照)。", "优先采用结果聚合通道避免共享 map:workers 仅向 resultsCh 发送 (j, r),由单独聚合协程汇总到本地 map,再统一返回。", "若必须共享 map,则以 sync.Mutex 保护或使用 sync.Map,并严格保证返回前停止所有写入,避免读写竞态。", "移除 worker 的 default 分支,使其阻塞在 <-jobs 或 <-ctx.Done();如需超时轮询可使用 select { case j := <-jobs: ...; case <-ctx.Done(): return; case <-time.After(...): ... },避免忙等。", "生产者发送时监听取消:select { case <-ctx.Done(): return; case jobs <- v: };发送完成后 close(jobs),让 worker 能通过 ok=false 有序退出。", "process 的 select 同时监听 ctx.Done();在任一退出路径都执行清理:触发取消、关闭 jobs(若尚未关闭)、等待 wg 完成后再返回(可用 errgroup.WithContext 简化生命周期管理)。", "为 jobs 设置合理缓冲区以平滑背压,例如 cap = min(len(inputs), max(1, n)*2);并对 n 做入参校验,n<=0 时回退到 1。", "防止溢出:使用 64 位计算并在平方前做阈值检查(例如 |j| > 3037000499 时拒绝或降级);或使用 math/bits 检测乘法溢出,必要时使用 big.Int。", "将固定的 time.Sleep 改为可取消等待(select 监听 ctx.Done 与 time.After),或删除非必要延迟以降低超时概率与背压放大。", "在超时/取消分支中也要执行统一收尾:取消发送方、关闭 jobs、等待 worker 退出,防止 goroutine 泄漏与返回后继续写入。", "对 inputs 为空或 nil 的场景确保仍会关闭 jobs 或尽快退出,避免 worker 空转等待。", "如业务需要幂等性/审计,可在聚合时记录重复键并提供覆盖策略或计数。", "增加并发与取消传播测试:启用 -race,配合 go vet/staticcheck;覆盖 n=0、inputs=空/大、重复值、提前取消与超时等用例。", "为多次调用的场景添加边界测试,确保每次调用的结果互不干扰且状态一致。" ], "analysisSummary": "共识别 14 个边界与缺陷点,核心问题集中在并发安全(共享全局 map 的读写竞态)、取消与关闭语义(未监听 ctx.Done、未 close(jobs) 导致阻塞与 goroutine 泄漏)、超时处理不彻底(退出未清理,返回后仍写 map)、忙等(default 分支导致高 CPU)以及数值溢出风险。建议采用结果聚合通道或互斥保护、严格的 ctx 传播与通道关闭、在所有退出路径执行清理与等待、参数与缓冲校验,以及在平方计算前进行溢出检查,以确保在取消/超时后系统状态一致并避免竞态与泄漏。", "executionTime": 0.08 }
通过静态分析代码片段,帮助开发者快速识别潜在的边界问题,并生成针对性优化建议,从而显著提升代码质量、降低漏洞风险、提高开发效率。
在代码提交或合并前,通过本工具检测边界问题,确保代码质量稳定,提升开发效率,减少上线后问题的可能性。
借助该工具对代码进行静态分析,快速生成精准的优化建议,提高代码审查效率,缩短项目进展周期。
在团队级别推动质量提升,协助开发者在初始阶段发现问题,降低代码问题流入生产环境的风险。
将模板生成的提示词复制粘贴到您常用的 Chat 应用(如 ChatGPT、Claude 等),即可直接对话使用,无需额外开发。适合个人快速体验和轻量使用场景。
把提示词模板转化为 API,您的程序可任意修改模板参数,通过接口直接调用,轻松实现自动化与批量处理。适合开发者集成与业务系统嵌入。
在 MCP client 中配置对应的 server 地址,让您的 AI 应用自动调用提示词模板。适合高级用户和团队协作,让提示词在不同 AI 工具间无缝衔接。
半价获取高级提示词-优惠即将到期