验证:record项元的多少影响修改速度。
验证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项元的多少影响修改速度。的更多相关文章
- javascript 元编程之-代码修改代码
javascript 元编程之-代码修改代码 引言 重构代码是个体力活,特别是在确定重构方案后,剩下就是按方案调整代码,然后进行测试. 如何有好又快的调整到位代码,这是件不容易的事. 简单的代码,可以 ...
- java layout 表格项增加、删除、修改
实现的内容为:点击表格某项,再点击删除钮,可实现删除点击表格某项,再点击编辑按钮,可实现内容改变点击添加按钮,可实现向表格中添加内容 总结:总的来说中间遇到了很多困难,但是都一步步的解决了. pack ...
- 1.配置桥接,并抓包验证 2.实现免密登录 3.修改登录端口: 22-》2222 4.不允许root用户远程登录 5.创建用户sshuser1,并设置密码,且只允许sshuser1远程ssh登录
1.配置桥接: 抓包时如果有ens160的ICMP,说明我们的桥接搭建成功通过桥接访问到了ens160(这里忘加图片了) (1)创建一个桥接设备和会话 (2)添加设备和会话到桥接设备上 (3)启动从 ...
- PowerShell添加或修改注册表开机启动项脚本
代码如下: $name = Read-Host "请输入开机启动项的名字(随便起)" $value = Read-Host "请输入开机启动项的值" try{ ...
- Ubuntu - Grub2.0修改默认启动项
1. 我的环境: Ubuntu 10.04 2. 关键位置和文件: /boot/grub/grub.cfg 文件: /etc/grub.d/ 目录: /etc/default/grub 文件: ...
- 修改layui的表单手机、邮箱验证可以为空怎么实现?
修改layui的表单手机.邮箱验证可以为空 解决办法: 修改源码: 把表单验证源代码(form.js)的正则表达式改一下,例如手机的正则为:/^1d{10}$/,可以改成/^$|^1d{10} ...
- linux和window双系统下修改系统启动项
参考:http://jingyan.baidu.com/article/63acb44ae4062c61fcc17e27.html: 我们在安装双系统之后经常会遇到想打开windows但默认启动项是u ...
- (转)[jQuery]使用jQuery.Validate进行客户端验证(初级篇)——不使用微软验证控件的理由
以前在做项目的时候就有个很大心病,就是微软的验证控件,虽然微软的验证控件可以帮我们完成大部分的验证,验证也很可靠上手也很容易,但是我就是觉得不爽,主要理由有以下几点: 1.拖控件太麻烦,这个是微软控件 ...
- 在IT行业获得成功 你只需一项技能[转]
能同时使用五种编程语言(包括一种机器语言)?不是. 项目管理能力,再高就是获得PMP认证?也不是. 超强的口才和书面沟通能力,正如工作职位中描述的那样?这不是痛点,但可以学习. 我曾经与最好的IT专业 ...
随机推荐
- MSSQL查找前一天,前一月,前一年的数据,对比当前时间记录查找超过一年,一月,一天的数据
,') ,GETDATE()) ,') ,GETDATE()) ,') ,GETDATE()) ,GETDATE())) ,GETDATE())) ,GETDATE()))
- ubuntu16.4安装后做的事情
1.安装搜狗拼音输入法 http://pinyin.sogou.com/linux/help.php 2.安装谷歌浏览器 http://jingyan.baidu.com/article/335530 ...
- 利用端口映射解决:拥有公网IP有限,内网需要访问因特网
动态端口映射: 内网中的一台电脑要访问新浪网,会向NAT网关发送数据包,包头中包括对方(就是新浪网)IP.端口和本机IP.端口,NAT网关会把本机IP.端口替换成自己的公网IP.一个未使用的端口, ...
- 开源爬虫Labin,Nutch,Neritrix介绍和对比
crawler 开发 语言 功能 单一 支持分布式 爬取 效率 镜像 保存 Nutch Java × √ 低 × Larbin C++ √ × 高 √ Heritrix Java √ × 中 √ ** ...
- Android设计模式系列(1)--SDK源码之组合模式
Android中对组合模式的应用,可谓是泛滥成粥,随处可见,那就是View和ViewGroup类的使用.在android UI设计,几乎所有的widget和布局类都依靠这两个类.组合模式,Compos ...
- 树莓派/RaspberryPi Ubuntu远程连接
网络设置 设置Ubuntu主机跟树莓派在同一网段,树莓派设置静态IP地址: 查看/etc/network/interfaces的内容,其中有#For static IP, consult /etc/d ...
- Mysql 比较运算符详解
熟悉了最简单的算术运算符,再来看一下比较运算符.当使用SELECT 语句进行查询时,MySQL允许用户对表达式的左边操作数和右边操作数进行比较,比较结果为真,则返回1,为假则返回0,比较结果不确定则返 ...
- Mysql 数据库字符类型详解
MySQL 中提供了多种对字符数据的存储类型,不同的版本可能有所差异.以5.0 版本为例,MySQL 包括了CHAR.VARCHAR.BINARY.VARBINARY.BLOB.TEXT.ENUM 和 ...
- servlet响应解析
response对象可以设置一些响应信息 1)设置状态码 response.setStatus(int) 2)设置响应头信息.定时刷新或者间隔 n 秒后跳转 response.setHeader(&q ...
- Spring Cloud(二):Spring Cloud Eureka Server高可用注册服务中心的配置
前言 Eureka 作为一个云端负载均衡,本身是一个基于REST的服务,在 Spring Cloud 中用于发现和注册服务. 那么当成千上万个微服务注册到Eureka Server中的时候,Eurek ...