草庐IT

multiple-dispatch

全部标签

iphone - iOS : firing multiple segues from a prototype cell in storyboards

有没有办法将原型(prototype)单元连接到不同的场景,并在didSelectRowAtIndexPath方法上调用[selfperformSegueWithIdentifier:@"NAMEOFTHESEGUE"sender:self]?我似乎无法将多个segue从原型(prototype)单元拖到不同的场景......我知道静态单元是可能的,因为你可以从每个单元绘制一个segue到场景但是如果我使用原型(prototype)单元怎么办?我目前正在尝试使用SWRevealViewController(https://github.com/John-Lluch/SWRevealVi

iphone - dispatch_group_wait 与 GCD

因此,我将一组图像发布到我的服务器。我想使用GCD异步发布数组,但我也想使发生这种情况的方法同步,以便我可以传回单个响应对象。然而,方法dispatch_group_wait似乎立即返回(而不是等待我的block完成)。这是一个问题,因为我在一个block中使用一个block吗?NSArray*keys=[imagesallKeys];__blockNSMutableDictionary*responses=[NSMutableDictionarydictionaryWithCapacity:[imagescount]];dispatch_group_tgroup=dispatch_g

ios - GCD中的dispatch_barrier_async和串行队列,它们有什么区别?

我发现dispatch_barrier_async的工作机制是,只有在之前加入队列的所有block都完成后才会执行。它的工作方式类似于串行队列。因此,我不去区分这两种运行模式在GCD中的区别。 最佳答案 dispatch_barrier_[a]sync旨在与并发队列一起使用。它们还应与对dispatch_[a]sync的调用一起使用。常见的用法是“多读者,一个作者”模式。您设置了一个并发队列。对于“阅读器”block,您使用dispatch_[a]sync。对于“编写器”block,您使用dispatch_barrier_[a]sy

ios - dispatch_sync(dispatch_get_global_queue(xxx), task) 是同步还是异步

苹果的文档说,dispatch_get_global_queue()是并发队列,dispatch_sync是串行的意思,那么任务是异步处理还是同步处理? 最佳答案 您对什么是队列以及异步与同步的含义感到困惑。队列是可以在其上运行block的实体。这些可以是串行的或并发的。串行意味着如果你按照A、B、C、D的顺序放置block,那么它们将被执行A,然后是B,然后是C,然后是D。并发意味着这些相同的block可能以不同的顺序执行,并且可能甚至不止一个同时运行(显然,假设您有多个要运行的内核)。然后是异步与同步。async的意思是当你调用

ios - dispatch_async 和 [NSURLConnection sendSynchronousRequest]

围绕这个话题有各种各样的问题,很多建议说不要在dispatch_async中使用sendSynchronousRequest,因为它会阻塞线程,并且GCD会产生很多新的工作线程来服务所有同步URL请求。关于iOS5[NSURLConnectionsendAsynchronousRequest:queue:completionHandler:]在幕后做了什么,似乎没有人给出明确的答案。我读过的一篇文章指出它“可能”进行优化,并且“可能”使用运行循环——但肯定不会为每个请求创建一个新线程。当我在使用sendAsynchronousRequest:queue:completionHandle

objective-c - 奇怪的崩溃问题为 :- Dispatch queue: com. apple.root.default-overcommit-priority

我正在开发一个应用程序,其中在ASINetworkQueue中添加了很多操作。这些操作基本上用于从服务器获取图像,然后成功完成后在表格View单元格中设置图像。一切都很好。我有一个按钮,一个TableView单元格,在该按钮上打开另一个ViewController。在另一个View上有一个十字按钮,我可以在该按钮上弹出该ViewController。现在,当点击十字按钮时,应用程序有时会在那里崩溃,有时当返回到上一个View并滚动我的表格View时会崩溃。当我看到崩溃日志时,我发现以下代码出现在任何崩溃的线程中。有时它是崩溃的线程2,有时它是崩溃的线程12,有时它是崩溃的线程6但该线程

ios - dispatch_get_current_queue() 已弃用,是否有安全 CoreData 的替代方案?

许多人问过一个标题相似但目的却截然不同的问题:CoreData要求您跟踪当前队列、当前线程和当前NSOperationQueue(如果您是NSOperation),如果您允许方法调用来自其他类(这,默认情况下,每个类都允许)。没有关于此的“可能”:这是一个硬性要求。这很好,而且通常很容易确保:NSAssert([NSThreadcurrentThread].isMainThread||myPrivateQueue==dispatch_get_current_queue(),@"Youtriedtocallthismethodfromanexternalthread,oraqueueot

ios - 代码推送 : How to deploy to multiple build versions of the same deployment config?

我理解理想情况下的部署模型,即所有用户始终将他们的应用程序更新到最新的应用程序商店版本。但实际上他们没有。如何使用CodePush处理reactnativeiOS应用程序的不同构建版本?考虑以下两种情况:1)我一直在使用CodePush将新的jsbundel部署到我的应用程序的1.0.0版本中。现在我发布了1.1.0并希望通过CodePush提供新代码。据我所知,现在可以同时部署到1.0.0和1.1.0,既不是不同的bundle,也不是同一个bundle。因此,一旦我将bundle推送到1.1.0,就无法更新未通过应用商店更新的1.0.0应用。2)据我所知,解决此问题的一种方法是仅发布

iOS Storyboarding - 实践经验 re : multiple developers?

Storyboard似乎是处理iOS中的多个ViewController以及它们之间的转换的一种优雅方式。但是,到目前为止,我一直避免使用它们,因为我担心当多个开发人员对同一Storyboard文件中的ViewController进行更改时会发生什么,以及可能导致的合并冲突。有没有人在中等复杂度的生产应用程序中对此有丰富的实践经验?您的评估是什么——Storyboard在这方面是否已准备好迎接“黄金时段”?还是它更适合单个开发人员或小型开发团队?(还有解决方法,例如“分片”到多个Storyboard文件中?)意见?谢谢! 最佳答案

ios - dispatch_sync 和全局队列的理解

我正在研究GCD机制,我有几个问题。如果我的Material有误,请您纠正我,我将不胜感激。1。问题)据我所知,GCD有4个具有不同优先级的全局并发队列。例如,当我们编写DISPATCH_QUEUE_PRIORITY_HIGH时,我们会得到其中一个队列。该队列不是空的,一些Apple系统进程在其上运行。因此,当我们在某些队列中添加代码块时,例如,当n是随机整数时,它可能是连续的n个任务。现在,当我们添加代码块时,比如dispatch_sync(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH,0),^{//Heavycalcu