给同时会说Swift和Xojo…的人提个问题
由于Xojo中的shell对象可以同步和异步运行,那么如何以相同的方式运行Swift Process()呢?
使用Xojo,我可以运行shell并在从正在运行的进程接收到数据时做出相应的响应,这样就不会在长时间的进程中锁定UI。
使用Swift,我只知道如何运行Process()并一次性处理结果数据。
熟悉Swift Process()的人能给我一些见解吗?
发布于 2021-06-28 04:28:43
在swift中,您可以异步运行调度队列中的进程。
DispatchQueue.main.async {
// your task here
}
DispatchQueue.global(qos: .userInitiated).async {
// your task here
}
DispatchQueue.global(qos: .background).async {
// your task here
}在您的情况下,我建议您在GitHub上搜索快速的“外壳”包。
如果你不想使用软件包,你可以在搜索DispatchQueue async时找到很多例子。
最好的开始:
https://www.hackingwithswift.com/read/9/4/back-to-the-main-thread-dispatchqueuemain
https://stackoverflow.com/questions/67094233
复制相似问题