我只是在做一个 1000 万次插入基准测试,以查看我正在构建的小型缓存系统的性能。在观察活动监视器时,我注意到mainGo 进程仅显示 100%(800% 的)CPU。我是否需要将循环拆分为例程以使其拆分为所有 8 个内核,还是有其他原因?我没有发布代码,因为测试代码只不过是主体测试函数中的一个循环。
1 回答

MM们
TA贡献1886条经验 获得超2个赞
您的应用程序只使用一个线程,因此只有一个核心以 100% 运行是正确的。
如果您想使用多个内核,则必须使用多个 goroutine,请记住设置GOMAXPROCS
shell 环境,否则您的应用程序将只使用一个内核。
请记住,使用多个进程可能会使您的应用程序更慢,因为如果您的行为本质上是顺序的,您无法仅添加更多goroutine
. 只有当您的行为本质上是并行时,您才能真正利用多线程。
- 1 回答
- 0 关注
- 192 浏览
添加回答
举报
0/150
提交
取消