按键精灵 python程序互通_ERLANG和PYTHON互通实现过程详解

本文介绍了如何使用Erlang连接Python程序,创建一个分布式系统。通过Erlang的gen_server行为和port命令,实现了Erlang调用Python脚本进行字符串处理的功能。当Erlang端调用town模块的combine函数时,Python脚本接收输入,处理后将结果返回给Erlang。
摘要由CSDN通过智能技术生成

最近开发 Erlang ,对其字符串处理能力无言至极,于是决定把它和python联合起来,打造一个强力的分布式系统,等将来需要系统级开发时,我再把 C++/C组合进来.

首先参考了 Erlang 官方文档和 http://blog.developers.api.sina.com.cn/?tag=erlang 以及 http://kazmier.net/computer/port-howto/ .

研读了将近24个小时, 才终于完全把问题解决. 起名为town,town在英文里表示集市,也就是代表各种语言在这里的交流与互动。) )

-module(town).

-behaviour(gen_server).

%% API

-export([start/0,combine/1]).

%% gen_server callbacks

-export([init/1, handle_call/3, handle_cast/2, handle_info/2,

terminate/2, code_change/3]).

-record(state, {port}).

start() ->

gen_server:start_link({global, ?MODULE}, ?MODULE, [], []).

stop() ->

gen_server:cast(?SERVER, stop).

init([]) ->

process_flag(trap_exit, true),

Port = open_port({spawn, "python -u /home/freefis/Desktop/town.py"},[stream,{lin

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值