验证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. [Swift A] - Using Swift with Cocoa and Objective-C--Mix and Match

    Swift与Objective-C的兼容能力允许你在同一个工程中同时使用两种语言.你可以用这种叫做“mix and match”的特性来开发基于混合语言的应用.使用Swfit的最新特性--“mix a ...

  2. 谈谈 Java 线程状态相关的几个方法

    http://blog.jrwang.me/2016/java-thread-states/ 发表于 2016-07-23 在 Java 多线程编程中,sleep(), interrupt(), wa ...

  3. mindmanager2018优化

      mindmanager2018优化 CreationTime--2018年6月6日09:35:02 Author:Marydon 1.点击“文件”-“选项”进入配置界面,在“常规”选项中,建议勾选 ...

  4. 用记事本编写一个Servlet项目

    第一步:建立目录 新建一个文件夹FirstServlet,然后在FirstServlet目录下面再建两个文件夹,分别为:WEB-INF和src.最后在WEB-INF下面建一个classes文件夹 第二 ...

  5. 【linux】FTP添加用户,设置权限和目录

    一.目的,新建一个用户 test2,登录ftp,它只有自己的主目录权限,其他同级和上级目录没有权限 二.ftp安装.配置 yum -y install vsftpd //通过yum来安装vsftpd ...

  6. mysql优化三

    1. 为查询缓存优化你的查询 大多数的MySQL服务器都开启了查询缓存.这是提高性最有效的方法之一,而且这是被MySQL的数据库引擎处理的.当有很多相同的查询被执行了多次的时候,这些查询结果会被放到一 ...

  7. NuGet学习笔记(2) 使用图形化界面打包自己的类库[转]

    http://www.cnblogs.com/lzrabbit/archive/2012/05/01/2477607.html 上文NuGet学习笔记(1) 初识NuGet及快速安装使用说到NuGet ...

  8. HDU 4280Island Transport(网络流之最大流)

    题目地址:pid=4280">http://acm.hdu.edu.cn/showproblem.php? pid=4280 这个题是一个纯最大流模板题..就是用来卡时间的.. 还好我 ...

  9. 以源码编译的方式安装PHP与php-fpm

    首先是最基本的下载,解压,编译安装(以PHP 5.3.6 为例): wget http://www.php.net/get/php-5.3.6.tar.gz/from/this/mirrortar x ...

  10. ctags简明用法

    1.安装: sudo apt install ctags 2.生成tags文件: //进入目标目录 ctags -R . 3.在vim中设置tags的绝对目录,这样就可以在任何子目录使用了. :set ...