ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

9千万次循环 从2分3秒 优化到 7.3秒的过程 GO语言

2021-08-13 03:31:06  阅读:180  来源: 互联网

标签:MAP 千万次 7.3 int GO new 方法 属性


 

这就是GO~  对于想极致的性能挖掘 GO语言基本没有太多空间。 

 下面是测试的代码,纯粹测试解释指令的效果,欢迎各语言残份 帮忙测一些数据对比一下。。

    int uu=0;
        //99999999
        for (int i=0;i<99999999;i++){
            uu++;
        
        }

 

说下优化 过程 

1、干了所有的MAP,必须要用MAP的话 key 请搞成int....  但是 在pprof的过程发现一个rumtime.mapxxaccessfast64xx的底层方法 也比较耗时,果断全换成切片了

2、能不用方法返回属性的 就不能通过方法返回属性,在外部 直接引用属性

3、所有的对象默认在栈上分配。。 后续的全靠GO了。。

4、切片能初始化容量\size的就初始化,方便快速索引,append 效率也比较低的

5、减少方法调方法的 这样会产生多次拷贝。。

后续的优化思路

1、所有需要对象,系统启动就每个 先new 100 个出来 池化起来,能不new就不new 同时能不栈上分配就不栈上分配

2、对于栈帧,也考虑提前new 因为会频发的使用到

 对于GO的 愚见

整体表现OK,从配套的调试工具,到舒适度,已经很不错了。

标签:MAP,千万次,7.3,int,GO,new,方法,属性
来源: https://www.cnblogs.com/cfas/p/15135613.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有