Erlang-接口技术
系统的构建一定会设计到简历接口,让他与不同的语言的应用程序之间简历系统的联系。这就叫做erlang的接口技术。
接口技术的三种实现方法:
1.让程序以外部操作系统进行的形式在Erlang虚拟机以外运行。这是一种安全的做法。即时外部语言的代码也是有问题的,也不会让Erlang系统崩溃,Erlang同坐一种名为端口的对象来控制外部程序,与外部进行的通信则是通过一个面向字节的通讯信道。Erlang负责启动和停止外部程序,可以可以监视他,让他在崩溃后重启,外部进行被称为端口进程,因为他是通过一个Erlang端口控制的。
2.在Erlang内部运行操作系统命令并捕捉结果
3.在Erlang虚拟机的内部运行外部语言代码,着设计到链接外部代码,和Erlang虚拟机代码,是一种不安全的做法,外部语言代码里的错误可能会导致Erlang系统崩溃,虽然它不安全,但还是有用的,因为这么做比使用外部进行更高效。(在代码链接到Erlang内核只适应于C语言这样能生成本地目标代码的语言,不适用于java这样自身拥有虚拟机的语言)
Erlang如何与外部程序通信
Erlang通过名为端口的对象向外部程序通信,如果想向端口发送一个消息,此消息酒会被发往与端口相连的外部程序,来自外部程序的消息就会变成来自端口的Erlang消息。
对程序员来说,端口的行为就像是一个Erlang进程,你可以向他发送消息,可以注册他,如果外部程序泵扩了,就会有一个退出信号发送给相连的进程,如果相连的进程挂了,外部程序就会被关闭。
请注意使用端口与外部进程通信很使用套接字的区别,如果实用段鸥,他会表现的想一个Erlang进行,这样就可以连接他,从某个远程分布式Erlang节点向他发送消息,如果使用了套接字,就不会表现出类似进程的行为,创建端口的进程被称为该端口的相连进行,相连进程有其特殊的重要性,所有发往端口的消息都必须标明相连进程的PID 所有来自外部程序的消息杜辉发往相连进程。(未完待续)
Erlang-接口技术的更多相关文章
- 《嵌入式系统原理与接口技术》——嵌入式系统接口应用基础
本文为我负责编写的电子工业出版社出版的<嵌入式系统原理与接口技术>一书第七章部分,这里整理的仍然是修改稿,供需要的同学参考,本书为普通高等教育"十二五"规划教材,电子信 ...
- ABAP重点各种接口技术
转自 http://www.cnblogs.com/penley/archive/2008/11/12/1332140.html 下面总结一下ABAP中的各种接口技术,因为学习时间不是很长,肯定还不全 ...
- 2017.11.1 微型计算机原理与接口技术-----第七章 中断系统与8237A DMA控制器
第七章 微型计算机原理与接口技术-----中断系统与8237A DMA控制器 (1)数据传送的两种方式:中断方式和直接存储器存取方式(DMA):中断是微处理器与外部设备交换信息的一种方式:DMA是存储 ...
- python---类接口技术
类接口技术 扩展只是一种同超类接口的方式.下面所展示的sPecial'ze.Py文件定义了多个类,示范了一些常用技巧.Super 定义一个method函数以及一个delegate函数.Inherito ...
- Java 接口技术 Interface
一.什么是接口技术(Interface): //举例中Comparable是一个接口,Employee是一个类 1.接口不是类,而是对类的一组描述,并不给出每个类的具体实现. 2.一个类可以实现多个接 ...
- 80x86/Pentium微机原理及接口技术-微处理器-学习笔记
80x86/ Pentium微机原理及接口技术 1. 计算机基础... 1 1.1常用术语... 1 1.2计算机中数与编码的表示方法... 1 1.2.1进制表示及进制转换... 1 1.2 ...
- CUDA C编程接口技术分析
CUDA C编程接口技术分析 编程接口 CUDA C为熟悉C编程语言的用户提供了一个简单的路径,可以方便地编写程序供设备执行. 它由C语言的最小扩展集和运行库组成. 核心语言扩展已经引入:cuda c ...
- 【PHP面向对象(OOP)编程入门教程】20.PHP5接口技术(interface)
PHP与大多数面向对象编程语言一样,不支持多重继承.也就是说每个类只能继承一个父类.为了解决这个问题,PHP引入了接口,接口的思想是指定了一个实现了该接口的类必须实现的一系列方法.接口是一种特殊的抽象 ...
- 跟着百度学PHP[4]OOP面对对象编程-12-对象接口技术(interface)
PHP与大多数面向对象编程语言一样,不支持多重继承.也就是说每个类只能继承一个父类. 接口正是解决每个类只能继承一个父类这个问题的 接口用什么权限,继承的那个方法也要使用什么权限. 接口的声明使用:i ...
- [芯片] 4、接口技术·实验四·串行接口8251A
目录 一.实验目的和要求... 2 二.实验原理与背景... 3 三.实验具体的内容... 3 四.实验的代码说明... 4 五.实验结果的分析... 6 附录资料 一.实验目的和要求 学会8251芯 ...
随机推荐
- 1、Kafka介绍
1.Kafka介绍 1)在流式计算中,Kafka一般用来缓存数据,Storm通过消费Kafka的数据进行计算. 2)Kafka是一个分布式消息队列. 3)Kafka对消息保存时根据Topic进行归类, ...
- Python 简单soket例子
简单的soket例子 Python 2.0 客户端服务端传输 1.可发字符串,可发字节 bys类型 Python 3.0 客户端服务端传输 1.只能发bys,比特流的类型. 2.bys类型只能接收 ...
- elastichd安装部署
1.下载 elastichd下载地址:https://github.com/360EntSecGroup-Skylar/ElasticHD/releases或是直接在linux下下载wget http ...
- D3生成树专题
这一天不知道怎的上课 竟然我说了两道题正解: 第一题:我写过一篇较详细的博客:https://www.cnblogs.com/Tyouchie/p/10366967.html 第二题:UVA10369 ...
- linux --- 5. nginx 初始
一. 安装nginx 1.安装nginxz之前的依赖包 yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel o ...
- (转载)Unity_3DText穿透场景物体解决
在unity的3D物体下有一个3DText 物体.这个物体可以在空间坐标中显示文本文字. 如下图: 这个3D Text在场景中的显示会出现穿透3D物体的现象.如图:本来这个hello world 的文 ...
- HDU 5405 Sometimes Naive(动态树)
题意 \(n\) 个节点的树,每个点有点权,\(m\) 次操作,操作分两种,修改一个节点的点权,对于一个 \((u,v)\) ,询问 \(\displaystyle\sum_{i=1}^n\sum_{ ...
- Latex: 参考文献双栏对齐
参考: How to level columns in bibliography? Latex: 参考文献双栏对齐 需要实现的效果: 方法1: 在开头引用balance: \usepackage{ba ...
- Ngnix配置
server { listen 80; server_name www.local.test; root /data/workspace; index index.php index.html in ...
- Vue 兼容 IE9 全功能正常使用的全面解决方案
https://blog.csdn.net/VhWfR2u02Q/article/details/80863626