【发布时间】:2017-04-28 05:32:53
【问题描述】:
我正在编写一个 gnome shell 扩展并运行一个 bash 脚本
let [, pid, , , ] = imports.gi.GLib.spawn_async(null, args, null, GLib.SpawnFlags.DO_NOT_REAP_CHILD, null);
这行得通,但是在运行几次后我能够看到
ps aux | grep pid
进程在那里,并被标记为已失效。这是正常的吗?我应该清理这些过程吗?或者这是正常行为?
GLib.spawn_async() 的描述确实说要调用GLib.spawn_close_pid(),但描述说:
在某些平台上,尤其是 Windows,GLib.Pid 类型表示必须关闭以防止资源泄漏的资源。为此目的提供了 GLib.spawn_close_pid。它应该在所有平台上使用,即使它在 UNIX 下没有任何作用。
我的系统是ubuntu,我应该打电话给spawn_close_pid()吗?
【问题讨论】:
标签: javascript linux glib gnome