grand-central-dispatch

    1热度

    2回答

    我使用DispatchGroup.enter()和leave()来处理助手类的reverseG异步函数。问题很明显,我使用mainViewController的对象在助手类中调用mainViewControllers的dispatchGroup.leave()!有没有办法做到这一点? 当在主视图控制器中声明reverseG时,相同的代码有效。从主视图控制器 dispatchGroup.enter(

    1热度

    1回答

    public class Account { // MARK: Initializer // Custom initializer // MARK: Stored Properties let concurrentQueue: DispatchQueue = DispatchQueue( label: "concurrentQueue",

    2热度

    1回答

    我用斯威夫特3 DispatchGroup等到多个异步操作完成(根据this answer其完美的作品,并按照预期 有没有一种方法来检查有多少操作被输入了貌似dispatchGroup.count或类似的东西?

    0热度

    1回答

    我想在Swift中实现一个简单的TCP套接字服务器。这段代码应该与C实现非常相似,但带有额外的Swift-isms。 我试图连接使用curl http://localhost:8080哪些应该至少触发“接受”,即使服务器中没有HTTP逻辑。 curl的响应是Connection refused 这是我正在使用的代码。它输出2 “上侦听描述符” 行,但没有 “接受......” 行 import L

    9热度

    1回答

    我正在与一个无限制的消费者生产者 - 消费者问题。生产者可以根据需要将任意数量的任务放入处理队列中。当队列为空时,使用者将阻塞该线程。 while true { do { guard let job = try self.queue.dequeue() else { return } job.perform() } catch { prin

    1热度

    1回答

    我试图在下载后执行segue。 我首先尝试了BlockOperation,但是我失败了。 以下是我的代码。我想先设置[BlockOperation]的数组。 然后,试图在此数组中追加Alamofire.download,但失败。 我不确定哪个部分出错了,也许每个块需要不同的名称? 请帮帮我。

    1热度

    1回答

    我制作了DispatchGroup并运行了2个异步任务。一个在main上,另一个在global()上。 只要我明白,DispatchGroup.notify的块应该在所有任务完成后调用,但它不会像我想的那样工作。 class Que { let group = DispatchGroup() init() { group.notify(queue: .main)

    0热度

    1回答

    我正在进行两个异步网络调用,并希望使用调度组等待直到调用完成,然后继续。我的程序很冻结。 class CommentRatingViewController: UIViewController, UITextViewDelegate { let myDispatchGroup = DispatchGroup() @IBAction func saveRatingComment(_ sende

    0热度

    1回答

    我试图从for循环中的firebase中获取一些数据,但它不起作用。 我知道我应该使用DispatchQueue,但我无法理解我应该如何使用它与Firebase。 我有一个循环: for i in 0..<Exercice.workout.count{ exercice = (Exercice.workout[i] as! [[Any]])[0][0] as! String p

    0热度

    2回答

    我正在尝试构建一个视频合并应用程序,该应用程序允许用户从集合视图中选择多个短片段,然后生成全部合并为一个视频的预览。我正在使用Photos框架(PHCachingImageManager)来填充集合视图,并将选定PHAssets的数组传递给下面的函数,以便请求低质量的AVAssets(用于合并生成预览的&)。 问题是,我需要按照用户选择它们的顺序保留AVAssets,但“requestAVAsse