Objective-Cで書かれたアプリケーションを持っていて、Cで書かれたアプリケーションからメッセージを受け取ろうとしています。私は2つのオプションがあります。XPCサービスと配管。 NSPipeに関して、私は新しいデータのために与えられた場所のファイルを見るパイプをどのように開くことができるかを判断しようとしています。簡単に言えば、新しいデータがパスXYZでファイルに書き込まれるタイミングを知る必要があります。しかし、NSPipeで見つかったすべての例は、お互いに通信するタスクのように見えます。これらのタスクはすべて、同じ中央アプリケーションによって生成され、所有されています。代わりに、あるプロセスの入力を別のプロセスの出力として割り当てます。私はCベースのアプリケーションを所有していないので、自分が所有するタスクの入力としてそのCプログラムの出力を割り当てることはできません。代わりに、私はデータがファイルに書き込まれることを期待しており、いつ到着するかを知る必要があります。どうすればこれを達成できますか?プロセスからのNSPipe入力が制御されない
0
A
答えて
0
私はこのコードがどこから得られたのか分かりませんが、私はこのコードをどこかでstackoverflowにコピーしただけです。このコードはファイルを監視し、監視しているファイルが変更されたときにif()条件内のステートメントを実行します。
-(void)monitorFile:(NSString*) path
{
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
int fildes = open([path UTF8String], O_EVTONLY);
__block typeof(self) blockSelf = self;
__block dispatch_source_t source = dispatch_source_create(DISPATCH_SOURCE_TYPE_VNODE, fildes,
DISPATCH_VNODE_DELETE | DISPATCH_VNODE_WRITE | DISPATCH_VNODE_EXTEND |
DISPATCH_VNODE_ATTRIB | DISPATCH_VNODE_LINK | DISPATCH_VNODE_RENAME |
DISPATCH_VNODE_REVOKE, queue);
dispatch_source_set_event_handler(source, ^{
unsigned long flags = dispatch_source_get_data(source);
if(flags)
{
// Do Stuff here
[blockSelf monitorFile:path];
}
});
dispatch_source_set_cancel_handler(source, ^(void) {
close(fildes);
});
dispatch_resume(source);
}
:私はからコピーした元の答えを見つけました
関連する問題
- 1. 制御されるタイプのテキストの制御されない入力
- 2. Reactの制御された要素と制御されていない要素。 _classは制御されていない入力を変更しています
- 3. ReactJS:状態の配列 - 制御されない入力
- 4. 制御されたコンポーネントをあらかじめ入力する
- 5. 入力フィールドがReact(制御入力)で変更されていません
- 6. ユーザ入力の制御
- 7. プロセス制御ブロック
- 8. コマンドラインインターフェース&プロセス制御
- 9. 制御されていない反応入力フィールドに入力する正しい方法は何ですか?
- 10. 注入DLLからWin32プロセスを制御する(VC++。NET 2010)
- 11. 反応制御入力は入力値を変更させない
- 12. OS Xプロセス制御
- 13. プロセスが出力されないプロセスの出力
- 14. Reactで制御された入力を設定する
- 15. MaskedTextBoxに入力されたURLを制御する方法
- 16. プロセスの検出/制御
- 17. リアクション警告:「制御されない非表示の入力を変更しています」なぜですか?
- 18. 特定のポストコードがフォーム入力に入力されないように制限
- 19. Wordpress - カスタムプラグインから制御されたカスタムメタタグ
- 20. ユーザーが入力したウェブサイトの入力を制御するにはどうすればよいですか?
- 21. ASP .Netリピータ制御出力の高さを制御する
- 22. Djangoフォーム入力を制御する
- 23. Python Popen _with_リアルタイム入出力制御
- 24. jqueryのテキスト入力の長さの制御
- 25. UIに制御が戻らない
- 26. ブラウザが入力タイプのファイルボタンを制御するのはなぜですか?
- 27. プロセスが実行されているコアを制御する方法は?
- 28. React.jsはjqueryよりも制御された入力を優先しますか?
- 29. Python Twisted - TelnetやSSHでバッファされた/バッファされない入力を制御する方法は?
- 30. なぜコントロールから制御されていない入力から反応に切り替えるのですか