使用 Erlang 管理外部进程的多个实例
我有一个单线程进程,它接受输入文件并生成输出文件(将文件输入和文件输出路径作为输入)。 我想使用 Erlang 创建、管理和关闭该进程的多个实例。
基本上,每当客户端进程需要生成输出文件时,客户端都会使用输入和输出路径连接到 Erlang 服务器 - 服务器启动一个新进程 - 为其提供路径,然后一旦进程完成,就终止该进程。
我对 gen_server 等如何工作有基本的了解,但我想知道是否可以使用 erlang 创建和删除外部进程的实例? (例如 JAR)。 我应该查看哪个图书馆?
I have a single threaded process, which takes an input file and produces an output file (takes file in and file out paths as inputs). I want to use Erlang to create, manage and close multiple instances of this process.
Basically, whenever the client process need to produce the output file, the client connects to the Erlang server with the input and output path - the server initiates a new process - feeds it the paths, and then once the process is done, terminate the process.
I have basic understanding of how gen_server etc. work, but I want to know whether I can use erlang to create and delete instances of an external process? (e.g. a JAR). What library should I look into?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
看看端口。 http://www.erlang.org/doc/man/erlang。 html#open_port-2
Look at ports. http://www.erlang.org/doc/man/erlang.html#open_port-2
os:cmd 函数可能是最接近的,请参阅 [http://www.erlang。 org/doc/man/os.html1。 它确实假设您的进程运行然后完成 - 不包括“删除”部分。
The os:cmd function is probably the closest, see [http://www.erlang.org/doc/man/os.html1. It does assume that your processes run and then finish - the "deleting" part is not covered.