Я использую CFMessagePort
для межпроцессного взаимодействия в приложении на основе AppKit и добавляю CFMessagePort
источник в текущий цикл выполнения.
CFMessagePortRef local = CFMessagePortCreateLocal( kCFAllocatorDefault, daemonHostName,didReceiveDataFromOtherProcess, NULL,false);
if (local) {
CFRunLoopSourceRef source = CFMessagePortCreateRunLoopSource(NULL, local, 0);
CFRunLoopRef rl = [[NSRunLoop mainRunLoop] getCFRunLoop];
CFRunLoopAddSource(rl, source, kCFRunLoopDefaultMode);
}
- Это правильный подход?
- Должен ли я запустить runloop, используя
CFRunLoopRun()
?
- Это повлияет на основные операции моего приложения (если клиент
отправлять сообщения каждую секунду)?