Module-module(Name).模块是方法的集合。注意这行最后的“.”符号是必不可少的。这个模块名必须和保存这段代码的文件(后缀为“erl”的文件)有相同的名称。当我们在使用另一个模块中的函数时,我们使用下面的语法module_name:function_name(arguments).在模...
分类:
其他好文 时间:
2015-02-02 12:22:30
阅读次数:
206
最近发现一个ets和list的查找小问题,以前一直没有注意,问题是这样的,一样的数据在list中能够查到,但是在ets中查不到:
从上图可以看出,对于list中可以使用2.0找到2,但是在ets中却不行,说明lists中查找使用的是==而ets中使用的是=:=,虽然不是什么特别严重问题,但是可能会在代码中留下难以发现的bug...
分类:
其他好文 时间:
2015-02-01 21:55:09
阅读次数:
232
erlang中错误大体分为四种: 1. 编译错误 2. 逻辑错误 3. 运行时错误 4. 用户代码生成的错误编译错误,主要是编译器检测出的代码语法错误逻辑错误,是指程序没有完成预期的工作,属于开发人员的问题运行时错误,是指erlang运行时抛出的错误,比如对非数据类型执行算术运算,erlang运行时...
分类:
其他好文 时间:
2015-02-01 17:44:50
阅读次数:
174
为什么我要选择Erlang呢? 一、erlang特别适合中小团队创业: erlang有异常成熟、经过电信级别大规模验证的OTP应用库,只需要很简单的代码就能建立起异常稳定、容错性强、扩展性强、高并发的服务器框架,这也是erlang最宝贵的核心价值所在。 二、erlang是天生的并发语言:...
分类:
其他好文 时间:
2015-01-31 17:49:59
阅读次数:
164
最近实现的一种简单的协议以及工具,主要用于客户端服务端通讯传输二进制数据时,协议的解包与封包,具体如下:首先定义协议的格式,主要由三部分组成: 数据长度(数据部分长度+协议号长度):4个字节 协议号:2个字节 数据部分:2进制数据数据部分如果是字符串需要先计算字符串的长度,占2个字节,之后再紧...
分类:
其他好文 时间:
2015-01-30 22:26:41
阅读次数:
443
beam文件是erlang编译器生成的文件格式,可以直接加载到erlang vm中运行的文件格式。 一. 文件格式 beam文件的文件布局如下: 文件由一个文件头加各种块构成,块的结构由块头加自定义结构组成。在beam文件中atom块,code块,字符串块,导入表,导出表,是必须出现的块。其它可选(...
分类:
其他好文 时间:
2015-01-28 20:59:18
阅读次数:
469
在控制台输出的话Name = "测试数据",io:format("~ts~n",[Name]).如果是和客户端通信,假如都是utf8编码服务器获取的时候,仍然可以直接通过binary_to_list解码发给客户端的数据的时候,需要用unicode:characters_to_binary("猪头")...
分类:
其他好文 时间:
2015-01-28 19:41:39
阅读次数:
454
http://avindev.iteye.com/blog/76373注:这篇文章可能会有争议,欢迎提出意见在Erlang中,如果要实现两个远程节点之间的通信,就需要通过网络来实现,对于消息发送,是使用TCP。如果要在两个节点间频繁发送消息,比如每秒几百上千条,那样就要注意了。无论是网游服务器开发的...
分类:
其他好文 时间:
2015-01-28 12:48:42
阅读次数:
171
http://www.cnblogs.com/me-sa/archive/2011/07/20/erlang0006.html 在Erlang中使用Tuple ,数据项的顺序\数量都是确定的,一旦数据项顺序调整或者增减字段,都容易出现badmatch.同时一些常量如果硬编码到代码中,一旦数值变化.....
分类:
其他好文 时间:
2015-01-27 17:45:31
阅读次数:
336
最近有朋友想学习erlang,问我有什么好入门的学习资料。我也借此机会整理一下:erlang中文手册、位运算与二进制解析、二进制高效编程、异常处理详解;面对软件错误构建可靠的分布式系统、编写分布式的 Erlang 程序:陷阱和对策、硝烟中的Erlang;底层有erlang VM基于多核处理器的可伸缩性特征、erlang VM内部数据共享机制、erlang 消息传递机制等...
分类:
其他好文 时间:
2015-01-25 19:41:04
阅读次数:
128