2012-12-12 30 views
5

D'de diğer işlemleri asenkronize olarak çağırmanın tercih edilen yolu nedir? Benim kullanım durumum, çıkış durumunu kontrol etmek ve standart çıktı ve hatasını ayrıştırmak için svn status çağırıyor. Ben std.stdio.popen düşünüyorumAsync Process Calls

cevap

5

istediğini geçerli:

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

bir File ile kullanın ve çıktıyı almak; gibi bir şey:

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

Yoksa görünüşte sizin için yapar (yanılma üzerine ErrnoException atar) std.process.shell kullanabilirsiniz.