我需要使用NSPipe通道實現兩個線程之間的通信,問題是我不需要通過指定此方法來調用終端命令。使用NSPipe進程之間的通信,NSTask
[task setCurrentDirectoryPath:@"....."];
[task setArguments:];
我只需要編寫一些數據
NSString * message = @"Hello World";
[stdinHandle writeData:[message dataUsingEncoding:NSUTF8StringEncoding]];
和其他線程收到此消息
NSData *stdOutData = [reader availableData];
NSString * message = [NSString stringWithUTF8String:[stdOutData bytes]]; //My Hello World
例如在C#這樣的事情可以用NamedPipeClientStream可以輕鬆完成, NamedPipeServerStream類,其中管道通過id字符串進行註冊。
如何在Objective-C中實現它?
是你的問題在同一個進程中約2牙,或約通過管道進行通信的單獨的進程? –
它關於通過管道進行通信的兩個線程 – Andrew
如何實現通過管道進行通信的獨立進程? – vadivelu