erlang
文章平均质量分 75
jamesjun
这个作者很懒,什么都没留下…
展开
-
erlang常用命令收集
转载:http://www.cnblogs.com/gordonchao/archive/2011/01/06.html1.net_adm:names()2.record_info(fields, Tab)3.Mod:module_info(attributes)4.beam_lib:chunks("Mod.beam", [attributes]).5. -vsn(12转载 2012-01-10 20:26:59 · 648 阅读 · 0 评论 -
erlang lists 系列函数功能与用法详解(共68个函数)
一,带函数Pred1, all(Pred, List) -> boolean()如果List中的每个元素作为Pred函数的参数执行,结果都返回true,那么all函数返回true,否则返回false例子:lists:all(fun(E) -> true end,[1,2,3,4]).结果true2, any(Pred, List) -> boolean()转载 2012-09-12 11:15:16 · 624 阅读 · 0 评论 -
Erlang监测系统CPU、内存、磁盘
os_monErlang的os_mon服务中提供了一些用于监测系统信息的服务cpu_sup:监测CPU负载和使用率(Unix)disksup:监测磁盘(Unix、Windows)memsup:监测内存(Unix、Windows、VxWorks)os_sup:监测系统日志(Solaris、Windows)使用os_mon进行监测先必须启动监测服务application:sta转载 2012-04-19 13:20:40 · 947 阅读 · 0 评论 -
Log4Erl 使用小记
from:http://www.hezhiqiang.info/articles/84/log4erl-a-port-of-java-log4j功能支持多日志当前文件Appender仅支持基于大小的日志文件滚动支持默认Logger,未指定Logger时系统提供默认Logger5个预定义的日志级别(debug, info, warn, error, fatal)一个error转载 2012-04-19 13:16:14 · 1674 阅读 · 0 评论 -
Erlang动态编译热替换
前几天研究ejabberd时,发现它log模块设置log_level采用动态编译方式,主要是基于dynamic_compile模块实现。于是基于它的动态编译进行了扩展,以到达可以动态代码编译并进行热替换的目的。在某些场合还是很实用的。废话少说,直接贴代码:此模块需要依赖 ejabberd 里的 dynamic_compile.erl 模块%%%-----------------------原创 2012-04-18 17:48:21 · 1634 阅读 · 0 评论 -
erlang log4erl日志记录
log4erl是一个application,所以要使用必须先启动才行,log4erl做为application启动后会运行一个gen_server类型的模块接收记录日志请求,该模块最终调用一个gen_event的模块异步写日志。 下载:http://code.google.com/p/log4erl/ 直接解压文件,通过命令行进入源文件目录编译启动。原创 2012-04-17 22:01:45 · 2853 阅读 · 0 评论 -
网络游戏同步法则
from:http://www.cppblog.com/keigoliye/archive/2009/09/12/95986.aspx 网路的硬件也有限,而人的创造也无限,在公网平均130ms的Latency下,是不存在“完全的”的同步情况。如何通过消除/隐藏延时,将用户带入快速的交互式实时游戏中,体验完美的互动娱乐呢?以下六点,将助你分清楚哪些我们可以努力,哪些我们不值得努转载 2012-04-11 15:07:34 · 675 阅读 · 0 评论 -
Erlang Programming拾零(经典)
receive子句的消息匹配模式:如果消息很简单,使用atom就可以描述的话,没必要使用tuple,tuple会消耗更多的内存,而且减慢了进程的处理速度。i()列出当前进程的详细信息,regs()列出所有注册进程和端口的详细信息。ets:i()列出所有ets表的详细信息。 atom不会被垃圾回收,因此为所有进程都进行注册有可能会耗尽内存。建议只对长生命周期的进程进行注册。 给pid发送消息不会转载 2012-01-31 14:12:57 · 586 阅读 · 0 评论 -
创建Erlang的Application
from:http://www.cnblogs.com/samis/articles/1770029.html我们写完一组功能模块后(在erlang中,以module为单位),总是希望这一组模块,可以打包成一个应用,作为一个单独的整个,可以启动,停止,象mnesia一样。并可以在其它应用中引用。如何来做到这一点呢。每一个应用都是通过application:start系列函数来启动,appl转载 2012-01-10 20:20:04 · 398 阅读 · 0 评论 -
Erlang---启动参数学习/研究
erlang启动参数有3种:emulator flags, flags 和plain arguments。emulator flags 是以“+”开头的,用来控制模拟器的行为,附送一个非常实用的例子:相关阅读:http://www.linuxidc.com/Linux/2011-07/39156.htm C:\>erl +V Erla转载 2012-01-10 20:23:59 · 865 阅读 · 0 评论 -
Erlang OTP之terminate 深入分析
转载:庆亮的博客-webgame架构一、terminate简述及问题产生 terminate是gen_server的一个回调函数,如果一个gen_server进程设置了trap_exit为true(process_flag(trap_exit, true)),则在该进程结束时会自动调用terminate。利用这个功能,我们可以在进程退出时进行一些善后工作,例如持久化数据、清理等等。转载 2012-01-11 16:22:21 · 1751 阅读 · 0 评论 -
gen_server三两话
from:庆亮的博客 http://www.qingliangcn.comgen_server是OTP中的一个重要组成,在开发中出现的频率相当高。弄明白这一块的,对于gen_server的使用有着相当好的帮忙。下面多数为代码。从start_link开始:gen_server.erlstart_link(Name, Mod, Args, Options) ->gen:start(转载 2012-01-11 15:01:25 · 721 阅读 · 0 评论 -
Erlang 热更新
from:http://www.cnblogs.com/me-sa/archive/2011/10/29/erlang0010.htmlErlang脱胎于电信业,Joe Armstrong在描述Erlang的设计要求时其中就提到了软件维护应该能在不停止系统的情况下进行。在实践中,我们也因为这种不停服务的热更新获益良多,终于不再用等到半夜没有人的时候再做更新了.那么如何进行热更新?Erlan转载 2012-01-10 20:16:13 · 521 阅读 · 0 评论 -
OTP中supervisor启动过程
转载自庆亮的博客-webgame架构从rabbit_sup模块开始看起:rabbit_sup模块的start_link是被rabbit app模块的start/2方法所调用的rabbit.erl文件:start(normal, []) ->{ok, SupPid} = rabbit_sup:start_link(),rabbit_sup.erl文件:-define(SE转载 2012-01-11 17:22:50 · 781 阅读 · 0 评论 -
Erlang/OTP's global module
from:http://blog.csdn.net/cuiweican/archive/2010/07/14/5735476.aspx Erlang/OTP's global 模块可用于以原子的形式为Erlang分布式系统中的进程命名,确保同一时刻分布式系统中的每个进程都有唯一的一个名字。 现在来看看global模块在实际操作中的表现吧,我们在两个一开始并未连接的Erlang结转载 2012-01-11 15:51:20 · 814 阅读 · 0 评论 -
Erlang开发建议
转载:http://hi.baidu.com/let163/blog/item/e7ca3413f311be1bb8127b70.html以下是在erlang项目开发中的一些记录,即包含很多通俗易懂的原则,也包含一些似是而非的建议,比较混乱,还没有积累到一个可以分门别类的地步,各位就将就看吧..:) * 确保没有任何编译警告 * Erlang中String采用list实转载 2012-01-11 15:46:02 · 473 阅读 · 0 评论 -
erlang网络编程的几个性能调优和注意点
转载:http://coderplay.iteye.com/blog/94209前些天给echo_server写了个非常简单的连接压力测试程序, 代码-module(stress_test). -export([start/0, tests/1]). start() -> tests(12345). tests(Port) ->转载 2012-01-10 20:33:01 · 472 阅读 · 0 评论 -
erlang搜索目录
erlang搜索目录 from:http://www.cnblogs.com/fangjie008/archive/2012/09/04/2670401.html启动erlang的时候会有默认的搜索路径,当然我们可以人为设置搜索路径,设置的方法一般有:一 .erlang 文件设置的方法: 1>获得home路径:启动erlang,输入init:get_argument(转载 2012-11-05 10:20:02 · 727 阅读 · 0 评论