【问题标题】:Async Process Calls异步进程调用
【发布时间】:2012-12-12 17:02:13
【问题描述】:

在 D 中异步调用其他进程的首选方式是什么?我的用例是调用svn status 检查退出状态,并解析其标准输出和错误。

【问题讨论】:

    标签: asynchronous process ipc d


    【解决方案1】:

    我认为std.stdio.popen 是你想要的:

    void popen(string command, in char[] stdioOpenmode = "r");
    

    将它与File 一起使用,您将获得输出;类似:

    File f;
    f.popen("svn status", "r");
    char[] line;
    string result;
    while (f.readln(line))
        result ~= line;
    return result;
    

    或者您可以使用std.process.shell,它显然会为您执行此操作(并在错误时引发ErrnoException)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-08-12
      • 1970-01-01
      • 1970-01-01
      • 2017-02-01
      • 1970-01-01
      • 2010-09-05
      • 1970-01-01
      相关资源
      最近更新 更多