问题标签 [nsxpcconnection]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
macos - 端点安全扩展中的 xpc
我正在开发一个端点安全扩展。主应用程序使用 pyobjc 在 Python 2.7.18 中运行。为了在应用程序和扩展之间建立通信,我尝试了 NSXPCConnection。我成功地将值发送到 Extension。但是在 pyobjc 中使用块并不成功。首先我进入了这个问题。我使用这个解决方案解决了它。在那之后得到问题
后来我想到了使用 XPC 的 C Api。但这里的问题是 xpc_main 阻塞了那个主线程。
xpc_main 调用了 dispatch_main 并且没有执行实际的扩展代码。我在 info.plist 中添加了 XPCService dict,并将 RunLoopType 添加为 NSRunLoop,如链接中所示
如果 xpc_main 和 Endpoint 扩展可以一起工作,请帮助我。NSXPCListner
工作正常。如果 xpc_main 不可能,那么我们如何使用 pyobjc 执行块。
node.js - 在 mac 上安装 XPC 连接时如何解决错误,以便我可以破解我的 furby?
在 MacOS 上安装 XPC 连接时出错。目前正在运行 Mojave (10.14.6)。对于上下文,我正在使用这个 repo破解一个furby 。它让我运行 npm install
,然后npm install xpc-connection
进行设置。当我运行时,npm install xpc-connection
我收到以下错误:
有谁知道如何解决这个问题?我搜索了其他论坛,但找不到mac的解决方案。我想知道这是否也是 node.js 版本的问题。我目前正在运行 node.js 的 v16.13.0。谢谢。
objective-c - 在 main 方法之外运行 xpc 连接
我想知道初始化 xpc 服务的上下文是否有任何限制。
这是我目前从 main() 初始化我的 xpc 服务的方式,它工作得很好。
但是,当从不同的方法(主)/线程(主线程)调用它时......它不接受远程调用,即使侦听器已正确初始化。
我什至尝试使用以下包装器包装此代码以在主线程上运行
在上面的示例中,[[NSRunLoop mainRunLoop] run];
从 main 方法调用 。
所以我的问题是使 XPC 工作的要求是什么.. 是否必须从 main 方法调用它?
ipc - macOS 上使用 XPC 的快速共享内存
我有两个 GUI 应用程序,它们使用共享内存(8 个内存实例,每个约 100MB)进行频繁的读/写操作,其中一个应用程序(“服务器”)写入内存,另一个从内存中读取。在 Windows 上,“服务器”应用程序使用函数创建共享内存CreateFileMappingA
,而其他应用程序使用OpenFileMappingA
. 通过 访问缓冲区MapViewOfFile
。锁定是通过命名互斥锁完成的。
现在我正在寻找一种在 macOS 上实现这一点的方法。XPC(尤其是xpc_shmem_map
)似乎很合适,但我并不完全理解它是如何工作的。从文档和其他来源(https://developer.apple.com/forums/thread/126716)看来,我们似乎总是(?)必须创建一个服务来充当两个应用程序之间的桥梁?或者一个应用程序可以充当“服务器”(如在 Windows 上)?
在 macOS(非沙盒)上以最少的复制在两个应用程序之间共享内存的最佳方式是什么?
问候,