Erlang 版本的 socket.io 服务器实现
MODULE sets MODULE SUMMARY Functions for Set Manipulation DESCRIPTION Sets are collections of elements with no duplicate elements. The representation of a set is not defined. This module provides exac
Erlang 安装 #wget http://www.rabbitmq.com/releases/erlang/erlang-19.0.4-1.el6.x86_64.rpm 安装Erlang #yum install erlang-19.0.4-1.el6.x86_64.rpm -y 命令中文说明: 1> help(). ** shell 内置命令 ** b() -- 显
%%server1.erl: -module(server1) -export([start/2,rpc/2]) start(Name,Mod)-> register(Name,spawn(fun()->loop(Name,Mod,Mod:init())end)). rpc(Name,Request)-> Name!{self(),Request}, receive
《Mnesia用户手册》中有几句话: 表达式 record_info(fields,record_name)被 Erlang 宏预处理程序处理后返回记录的域名列表.定义记录-record(foo, {x,y,z}), 表达式 record_info(fields,foo)被扩展为列表[x,y,z]. 所以,record_info/2这个是在编译时预处理的,不是运行时执行,所以如下代码会报错的,而且
一、erlang:process_info(Pid). erlang:process_info(pid(0,33,0)). 获取erlang进程的信息,运行下看看返回值: [{registered_name,rex}, {current_function,{gen_server,loop,6}}, {initial_call,{proc_lib,init_p,5}}, {s
Erlang主要用于写服务器,GUI不太重要,甚至不是必须。 但为了提升学习兴趣,需要写点GUI,于是,在XP上试了试wxErlang。 1、下载 打开网页: http://apps.sourceforge.net/mediawiki/wxerlang/index.php?title=Main_Page 找到链接Downloads: http://sourceforge.net/project/s
Erlang 的学习感受 Erlang 是个好东西,并发控制、容错机制、分布应用,……,简直是个高级实用技术仓库。在它适用的领域里,Erlang 有着独步天下的优势,至今没有别的语言工具能与它叫板抗衡。 最近,开始学习 Erlang,看了几天的e教材后,有些相见恨晚的感叹。为了提醒备忘,把一些收获感受写下来。 一、怎样快速入门 现在,从网上能很容易地找到一大堆 Erlang 的中英文资料。虽说开卷
以下是在erlang项目开发中的一些记录,即包含很多通俗易懂的原则,也包含一些似是而非的建议,比较混乱,还没有积累到一个可以分门别类的地步,各位就将就看吧.. :) * 确保没有任何编译警告 * Erlang中String采用list实现,32位系统中,其1个字符用8个字节的空间(4个保存value, 4个保存指针)。因此string速度较慢,空间占用较大 * 在Server中,总是尽力书
Erlang概述收藏 新一篇: 什么是Python | 旧一篇: Ruby简介 <script>function StorePage(){d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():'');void(k
2006/9/8 分布式、并行计算语言Erlang 学习笔记(第一部分) Erlang是由爱立信公司开发的一种平台式语言,可以说是一种自带了操作系统平台的编程语言,而且在这个平台上实现了并发机制、进程调度、内存管理、分布式计算、网络通讯等功能,这些功能都是完全独立于用户的操作系统的,它采用的是类似于Java一样的虚拟机的方式来实现对操作系统的独立性的。 介绍一下Erlang先: 1、并发性:E
问题的缘起是芒果在使用mochiweb的过程中遇到一个异常,在google的讨论组中我找到了同样的问题: =ERROR REPORT==== 7-Apr-2011::18:58:22 === "web request failed" path: "cfsp/entity" type: error what: badarg trace: [{erlang,iolist_size, [[...]]},
1、变量 1)erlang变量变量必须以大写字母或者下划线开头,可以包含字母、下划线和@; 2)变量只容许赋值一次 2、数字类型 1)B#Val表示以B进制存储的数字Val,比如 7> 2#101. 5 二进制存储的101就是10进制的5了 8> 8#101. 65 八进制存储的101就是10进
centos7环境下的erlang otp的编译(★firecat推荐★) 一、技术博客 http://blog.csdn.net/erlib 为什么我要选择erlang+go进行服务器架构(1) 为什么我要选择erlang+go进行服务器架构(2) http://www.qingliangcn.org/ https://github.com/qingliangcn 开源mgee—2010年
进程链接: 通过调用process_flag(trap_exit,true)来把一个普通进程转为系统进程,系统进程能捕获它所链接的进程的退出消息。 进程A与进程B链接,进程B调用process_flag(trap_exit,true),进程B为系统进程,进程A正常常退出时,进程B捕获到并处理A退出的消息,进程B继续正常运行。 进程A与进程B链接,进程B调用process_flag(trap_exi
一,启动&退出Erlang Shell $ erl // 启动 $ halt(). // 退出 二,编译和运行 示例代码: -module(hello). -export([start/0]). start() -> io:format("Hello worl~n"). 1,在Erlang shell里 $ erl 1> c(hello). 2> hello:start(). 2,在系统
认识Erlang Erlang并非一门新语言,它出现于1987年,只是当时对并发、分布式需求还没有今天这么普遍,当时可谓英雄无用武之地。Erlang语言创始人Joe Armstrong当年在爱立信做电话网络方面的开发,他使用Smalltalk,可惜那个时候Smalltalk太慢,不能满足电话网络的高性能要求。但Joe实在喜欢Smalltalk,于是定购了一台Tektronix Smalltak
module.beam: Module name 'madule' does not match file name 'module' The module name you’ve entered in the -module attribute doesn’t match the filename. ./module.erl:2: Warning: function some_function/
Erlang shell 被用于表达式的测试。因此,测试可以在 shell 进行,这是在实际的应用程序运行之前进行测试。 下面的例子展示了如何在 shell 中添加表达式并使用。这里需要指出的是,表达需要使用(.)定界符来作为结束符。 执行该命令后,shell 打印出另一个提示,此时为命令编号为2(因为指令数在每次输入新命令后增加)。 以下函数在 Erlang Shell 最常见的。 b() −
maestro 是 Erlang 池管理程序。 为什么? 短暂 I/O 任务(比如数据库访问)的大型 worker 池会因为太多迁入和迁出活动而拖垮单个 poolboy 管理器。 怎样做? 使用简单的方法,启动多个池;随机迁出。maestro 需要了解每个池的工作流,当每个池都是同一类型的加载模式时,将会提升复杂性,降低性能,没有什么明显的优势。 使用: MaestroName = many_po
随着Erlang和FP的普及,总有人想把Erlang用在Web开发上。 虽然这不一定是个靠谱的想法,但是,还是看上去很美的想法。 Nitrogen 就是其中一个实现。它主要关注在快速开发交互密集型的Web,喜欢Erlang的童鞋可以看一下。
Erlang SPDY 是 Erlang 实现对 SPDY 协议的支持。
主要内容:实用方法递归,重复(复本),列表反转递归是 Erlang 的重要组成部分。首先,让我们通过实现阶乘程序来了解简单的递归。 示例 对于上面的例子,有以下几点需要注意 - 我们首先定义一个函数 fac(N); 我们可以通过定义递归函数 fac(N) 递归; 上面的代码的输出结果是 - 实用方法递归 在本节中,我们将详细了解不同类型的递归及其在 Erlang 中的使用。 长度递归 以递归一个更有效的方法可以用于确定一个列表的长度,现在来看
主要内容:定义模块,模块属性,预先内置属性模块是在一个单一的文件重新组合的函数,在一个单一的名称。此外,在 Erlang 所有函数必须在模块定义。 大部分像算术,逻辑和布尔操作符的基本函数已经 Erlang 内部集成提供并且可以直接调用,因为在运行程序时的默认模块被加载。一个模块中使用定义的所有其他函数需要使用形式 Module:Function (参数) 来调用。 定义模块 有了模块,我们可以声明两个东西:函数和属性。属性就类似它的名称