以下是一个小小的服务器,可以用回调模块作为它的参数。
-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
{Name,Response}->Response
end.
loop(Name,Mod,State)->
receive
{From,Request}->
{Response,State1}=Mod:handle(Request,State),
From !{Name,Response},
loop(Name,Mod,State1)
end.
编写server1的一个回调模块,它是一个名称服务器回调模块,这段代码实际上执行两个任务,它首先充当被服务器框架代码调用的回调模块,与此同时,它还包含了将被客户端调用的接口方法,OTP的惯例是把这两类函数放在同一个模块中。
-module(name_server).
-export([init/0,add/2,find/1,handle/2]).
-import(server1,[rpc/2]).
add(Name,Place)->rpc(name_server,{add,Name,Place}).
find(Name)->rpc(name_server,{find,Name}).
init()->dict:new().
handle({add,Name,Place},Dict)->{ok,dict:store(Name,Place,Dict)};
handle({find,Name},Dict)->{dict:find(Name,Dict),Dict}.

Erlang程序设计(第2版)【瑞典】Joe Armstrong著,牛化成译。【M】北京:中国工信出版社与人民邮电出版社。

Server:基本的服务器相关推荐

  1. sql server 在占用服务器内存居高不下怎么办【转】

    在管理一个测试服务器的时候,内存使用率居高不下,在资源管理器中查看到 sql server 2008  占用了80%的系统资源,于是找到了一下资料,并解决了Sql Server 2008 占用内存过大 ...

  2. 2003系统服务器,雨林木风 windows server 2003企业版服务器系统

    1.雨林木风 windows server 2003企业版服务器系统 在WindowsServer2003中,群集安裝和设置更容易也更安全可靠,而该产品的提高网络功能提供了更强的常见故障迁移能力和更长 ...

  3. Sql Server使用链接服务器远程取数据!

    由于最近开发的一个查询系统,基本是在其它服务器的,所以在本地服务器设计了中间,用来存从远程服务器取数据!     一种方法是通过,OPENDATASOURCE来远程读取数据! SELECT   * F ...

  4. windos server 2003 邮件服务器的搭建

    2019独角兽企业重金招聘Python工程师标准>>> 很多企业局域网内都架设了邮件服务器,用于进行公文发送和工作交流.但使用专业的企业邮件系统软件需要大量的资金投入,这对于很多企业 ...

  5. 使用Filezilla Server配置FTP服务器

    使用Filezilla Server配置FTP服务器 一.下载Filezilla  Server 官网网址:https://filezilla-project.org 二.安装Filezilla  S ...

  6. windows 下使用 Filezilla server 搭建 ftp 服务器

    windows 下使用 Filezilla server 搭建 ftp 服务器 1. Filezilla server 免费,开源, ftp 服务端 2. 下载安装, windows  https:/ ...

  7. Skype for Business Server 2015-03-后端服务器-1-安装

    申明:文章中部分内容有涉及官方帮助或者网上资源整合,如有违权,请速与作者联系,谢谢! 作者:316191099@qq.com 培训:Skype for Business Server 2015-项目实 ...

  8. 小型邮件服务器,windows 2003 server小型邮件服务器架设

    一.安装pop3和smtp服务组件: 1.安装pop3服务组件:以系统管理员身份登录windows 2003 server系统,依次进入"控制面 板--添加或删除程序--添加/删除windo ...

  9. Ubuntu Server搭建FTP服务器(2) --本地用户FTP服务器架设

    Ubuntu Server搭建FTP服务器(2) --本地用户FTP服务器架设 参考:ubuntu中文wiki百科,网址:wiki.ubuntu.org.cn 环境:Ubuntu 9.04 Serve ...

  10. linux vlc流媒体服务器,vlc media server rtsp 流媒体服务器搭建成功经验分享

    vlc 由videolan.org 出品,开源免费的一款本地和网络播放器,支持个音视频格式非常多,还可以用来搭建 rtsp 流媒体服务器,非常好用,支持的平台很多:windows.mac.linux都 ...

最新文章

  1. 【CVPR 2020】弱监督怎样做图像分类?上交大提出自组织记忆网络
  2. Modify批量处理优化
  3. java的object如何转为具体的类_佛山个体户如何转为公司?
  4. Appium下载安装及环境配置
  5. Mysql的关联查询语句
  6. 立竿见影地把你的 Python 代码提速7倍
  7. 小汤学编程之JAVA基础day15——枚举、注解和Properties
  8. php mysql foreach_php foreach输出两次
  9. 古剑2计算机中丢失,小编研习win7系统玩古剑奇谭2提示计算机中丢失Vcomp100.dl的图文方法...
  10. 庆祝.Net BI团队成立!
  11. 解读cartographer/common/port.h--Cartographer(一)
  12. NoSQL 已死:我们不需要他了
  13. Unix系统中常用的信号含义
  14. linux把程序放入后台执行,linux将程序放到后台执行
  15. 旅游网站首页——html
  16. 差异性分析该如何选择?
  17. 华为交换机RRPP环协议
  18. Springboot中对jpa动态查询条件的封装
  19. maven--profile--使用/教程/示例
  20. 用R语言建立logistic回归模型

热门文章

  1. db_recovery_file_dest恢复区的空间保留问题
  2. 大一学计算机需要准备做东西,我是浙江大学大一的学生,以后打算学习计算机专业,想去卡耐基梅隆大学或MIT读研,不知道需要做哪些准备?...
  3. 网页设计中的色彩搭配技巧
  4. FlashFXP导出导入站点
  5. 机动车污染排放检验信息系统信息化建设目标及规范
  6. 这个国庆,我去佛山看舞狮,太惊艳!
  7. 《疯狂动物城》 —浪潮分布式存储让动画渲染更高效
  8. 2020年IT运维市场大前景到底怎么样
  9. Firfox的炫酷名字怎么来,各位,好不好奇~!
  10. U盘做系统时如何设置USB为第一启动盘