验证erlang官网提供的思想:record的修改是复制。

-module (test_record).
-record (record_5,{ aa1 = 0,
aa2 = 0,
aa3 = 0,
aa4 = 0,
aa5 = 0}). -record(record_50,{ aa1 = 0,
aa2 = 0,
aa3 = 0,
aa4 = 0,
aa5 = 0,
aa6 = 0,
aa7 = 0,
aa8 = 0,
aa9 = 0,
aa10 = 0,
aa11 = 0,
aa12 = 0,
aa13 = 0,
aa14 = 0,
aa15 = 0,
aa16 = 0,
aa17 = 0,
aa18 = 0,
aa19 = 0,
aa20 = 0,
aa21 = 0,
aa22 = 0,
aa23 = 0,
aa24 = 0,
aa25 = 0,
aa26 = 0,
aa27 = 0,
aa28 = 0,
aa29 = 0,
aa30 = 0,
aa31 = 0,
aa32 = 0,
aa33 = 0,
aa34 = 0,
aa35 = 0,
aa36 = 0,
aa37 = 0,
aa38 = 0,
aa39 = 0,
aa40 = 0,
aa41 = 0,
aa42 = 0,
aa43 = 0,
aa44 = 0,
aa45 = 0,
aa46 = 0,
aa47 = 0,
aa48 = 0,
aa49 = 0,
aa50 = 0 }). -export ([test_5/1,test_5/2,test_50/1,test_50/2]). test_5(Amount)->
Record_5 = #record_5{},
%% Fun = fun(Amount2,Record_5_2)-> test_5(Amount2 ,Record_5_2) end,
%% {Time_ms,_Value} = timer:tc(Fun,[Amount,Record_5]),
{Time_ms,_Value} = timer:tc(test_record,test_5,[Amount,Record_5]),
Time_s = Time_ms div 1000,
io:format("test_5 cost time:~w ms~n",[Time_s]). test_5(0,_Record_5)->
ok;
test_5(Amount,Record_5)->
_New_Record_5 = Record_5#record_5{aa2 = 2},
test_5(Amount - 1,Record_5). test_50(Amount)->
Record_50 = #record_50{},
{Time_ms,_Value} = timer:tc(test_record,test_50,[Amount,Record_50]),
Time_s = Time_ms div 1000,
io:format("test_50 cost time:~w ms~n",[Time_s]). test_50(0,_Record_50)->
ok;
test_50(Amount,Record_50)->
_New_Record_50 = Record_50#record_50{aa20 = 2},%% aa2 和 aa2 的速度同样。
test_50(Amount - 1,Record_50).

验证:record项元的多少影响修改速度。的更多相关文章

  1. javascript 元编程之-代码修改代码

    javascript 元编程之-代码修改代码 引言 重构代码是个体力活,特别是在确定重构方案后,剩下就是按方案调整代码,然后进行测试. 如何有好又快的调整到位代码,这是件不容易的事. 简单的代码,可以 ...

  2. java layout 表格项增加、删除、修改

    实现的内容为:点击表格某项,再点击删除钮,可实现删除点击表格某项,再点击编辑按钮,可实现内容改变点击添加按钮,可实现向表格中添加内容 总结:总的来说中间遇到了很多困难,但是都一步步的解决了. pack ...

  3. 1.配置桥接,并抓包验证 2.实现免密登录 3.修改登录端口: 22-》2222 4.不允许root用户远程登录 5.创建用户sshuser1,并设置密码,且只允许sshuser1远程ssh登录

    1.配置桥接:  抓包时如果有ens160的ICMP,说明我们的桥接搭建成功通过桥接访问到了ens160(这里忘加图片了) (1)创建一个桥接设备和会话 (2)添加设备和会话到桥接设备上 (3)启动从 ...

  4. PowerShell添加或修改注册表开机启动项脚本

    代码如下: $name = Read-Host "请输入开机启动项的名字(随便起)" $value = Read-Host "请输入开机启动项的值" try{ ...

  5. Ubuntu - Grub2.0修改默认启动项

    1. 我的环境: Ubuntu 10.04   2. 关键位置和文件: /boot/grub/grub.cfg 文件: /etc/grub.d/ 目录: /etc/default/grub 文件:   ...

  6. 修改layui的表单手机、邮箱验证可以为空怎么实现?

      修改layui的表单手机.邮箱验证可以为空   解决办法: 修改源码: 把表单验证源代码(form.js)的正则表达式改一下,例如手机的正则为:/^1d{10}$/,可以改成/^$|^1d{10} ...

  7. linux和window双系统下修改系统启动项

    参考:http://jingyan.baidu.com/article/63acb44ae4062c61fcc17e27.html: 我们在安装双系统之后经常会遇到想打开windows但默认启动项是u ...

  8. (转)[jQuery]使用jQuery.Validate进行客户端验证(初级篇)——不使用微软验证控件的理由

    以前在做项目的时候就有个很大心病,就是微软的验证控件,虽然微软的验证控件可以帮我们完成大部分的验证,验证也很可靠上手也很容易,但是我就是觉得不爽,主要理由有以下几点: 1.拖控件太麻烦,这个是微软控件 ...

  9. 在IT行业获得成功 你只需一项技能[转]

    能同时使用五种编程语言(包括一种机器语言)?不是. 项目管理能力,再高就是获得PMP认证?也不是. 超强的口才和书面沟通能力,正如工作职位中描述的那样?这不是痛点,但可以学习. 我曾经与最好的IT专业 ...

随机推荐

  1. [原]理解HTTP之Content-Type

    http://homeway.me/2015/07/19/understand-http-about-content-type/ 0x01.About 查看Restful API 报头插件:utm_s ...

  2. Matlab interpgui

    function interpgui(arg1,arg2) %INTERPGUI Behavior of interpolating functions. % Demonstrates interpo ...

  3. OpenERP对象字段定义的详解

    OpenERP对象支持的字段类型有,基础类型:char, text, boolean, integer, float, date, time, datetime, binary:复杂类型:select ...

  4. 有关索引的DMV(转)

    转自:http://www.cnblogs.com/CareySon/archive/2012/05/17/2505981.html 1.查看那些被大量更新,却很少被使用的索引 SET TRANSAC ...

  5. mysql 5.5安装手记

    从MySQL5.5 开始就要用cmake安装,本次安装的版本为mysql-5.5.22.tar.gz #准备工作 yum install -y gcc gcc-c++ libtool autoconf ...

  6. 在linux下新增一块硬盘的操作。(包含大于2T的硬盘在linux下挂载操作)

    转自:http://blog.csdn.net/season_hangzhou/article/details/36423223 一.安装硬盘到物理机上. 二.查看硬盘是否正确安装. 使用“fdisk ...

  7. ORACLE expdp/impdp详解(转)

    ORCALE10G提供了新的导入导出工具,数据泵.Oracle官方对此的形容是:Oracle DataPump technology enables Very High-Speed movement ...

  8. OFBiz:解析doRequest()

    这里的doRequest()是指RequestHandler中的同名函数: public void doRequest(HttpServletRequest request, HttpServletR ...

  9. sms_queue 短信队列

    git地址:https://github.com/Filix/sms_queue 简介 通过队列的方式发送短信,暂时实现了redis作为队列. 以实现的第三方短信服务: 百悟.漫道. 发送短信方,只需 ...

  10. JAVA变量的执行顺序

    对于静态变量.静态初始化块.变量.初始化块.构造器,它们的初始化顺序以此是(静态变量.静态初始化块)>(变量.初始化块)>构造器.我们也可以通过下面的测试代码来验证这一点: package ...