外部调用elixir字节码的方法

时间:2014-03-18 11:31:20

标签: java elixir

defmodule Math do
  def sum(a, b) do
    a + b
  end
end

我创建了这个elixir模块并使用命令elixirc file.ex创建了字节代码。我需要使用字节码从另一个程序调用Math.sum()。 我可以使用

在java程序中调用此方法吗?
String startErlangVM = "iex";
Runtime.getRuntime().exec(startErlangVM + ";" + "Math.sum(1, 2)" );

但这不起作用。有没有办法调用Elixir方法而不是调用iex来显式启动Erlang虚拟机?

1 个答案:

答案 0 :(得分:2)

  

我想运行一个支持多核的程序。前端是在java中。但是java VM并不支持并行编程。一次只能运行一个线程。 Elixier在并行编程方面更胜一筹。所以我尝试使用elixir创建后端。我需要帮助调用elixir方法。

在这种情况下,要使用并发功能,您应该将Java前端实现为TCP客户端。并将Elixir后端实现为TCP服务器,即处理客户端请求并使用消息进行响应。