草庐IT

dispatch_release

全部标签

ios - dispatch_after() 弹出时间为零

是否有可能使这个“更清晰”或“更好”?欢迎任何解决方案,甚至认为我得到了正确答案。问题是popTime==0的dispatch_after()仍然给主线程时间来进行一些UI更改。以下代码有时会从后台线程调用。-(void)methodCalledFromSomeThread{if(delayInSeconds){dispatch_time_tpopTime=dispatch_time(DISPATCH_TIME_NOW,delayInSeconds*NSEC_PER_SEC);dispatch_after(popTime,dispatch_get_main_queue(),^(void

ios - Objective-C指针类型 'dispatch_source_t'的隐式转换

我尝试学习如何使用GCD(THEDOC),并从苹果文档中编写其中一些代码。但它不能在Xcode中编译。不确定我应该如何修复它。-(void)viewDidLoad{[superviewDidLoad];dispatch_source_type_ttimer=dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER,0,0,dispatch_get_main_queue());if(timer){dispatch_source_set_timer(timer,dispatch_walltime(NULL,0),30ull*NSEC_PER_SEC

ios - 使用 dispatch_async NSURLSession 调用的结果更新 UILabel

几周前我开始了Objective-C编程,所以我对所有这些部分如何组合在一起以及它们发生的顺序的理解仍然让我感到困惑。我正在尝试使用NSURLSession对我的一个应用程序进行JSONAPI调用。这一切都完美无缺,但我想用返回的一段数据更新标签,每当我查看/尝试更新标签时,我都会得到null。我发现的一些与我的问题类似的SO帖子包括:this,this,this,和this.来自RubyonRails世界,我根本不需要处理异步概念,但我知道我已经很接近了。这里是有问题的相关代码片段:if(!jsonError){NSDictionary*skillBuildData=[NSJSONS

ios - 如果操作未完成,iPhone 应用程序会因 dispatch_async 而崩溃

在我发布的iPhone应用程序中,我使用了dispatch_asyncblock,没有出现任何问题。该应用检查网站的价格更新,解析HTML,相应地更新核心数据模型,然后刷新正在查看的表格。但是,在我最新的应用程序中,我发现我可以通过在价格更新过程运行时切换出应用程序来使应用程序崩溃。第一次和第二次使用之间的区别在我看来只是我从表的refreshController调用调度block(即tableViewController现在是内置的下拉刷新机制),现在是iOS7。任何人都可以向我建议如何在已知条件下优雅地中止dispatch_async,例如用户希望停止进程,或者如果他们像这样切换应

ios - dispatch_async 什么时候真正派发?

假设我有以下代码:dispatch_async(dispatch_get_main_queue()){myFunction()}这表示异步调用调用myFunction的block。假设我在我的主队列中调用此代码,该队列也是为dispatch_async调用指定的队列。在这种情况下,这个block实际上是什么时候被调用的?我当前的队列是否被抢占并且block立即运行,或者当前调用堆栈是否展开并且block在下一个事件循环中被调用?或者是其他东西? 最佳答案 Whendoesthisblockactuallygetcalledinthi

ios - 如何使用 Quartz 2D 和 Grand CEntral Dispatch 以编程方式生成 UIImage

现在我有一个图像正在使用Quartz2D以编程方式在水龙头上生成。我想将它与grandcentraldispatch结合使用,这样它就可以在另一个cpu上创建,并在完成时触发通常的淡入动画。现在我使用这篇文章底部的后续代码,但我收到了这些无效的上下文错误。有没有办法做到这一点,还是我运气不好?CGContextTranslateCTM:invalidcontext0x0CGContextScaleCTM:invalidcontext0x0CGContextSaveGState:invalidcontext0x0CGContextSetCompositeOperation:invalid

ios - vImage 具有与带 dispatch_apply 的普通循环相同的性能

此代码每次都在嵌套循环中运行9600次,并且在iPhone4S上的总运行时间必须低于30毫秒:vImage_Buffersource={sourceArea.data,patchSide,patchSide,patchSide};vImage_Bufferdestination={(uchar*)malloc(patchSide*patchSide*sizeof(uchar)),patchSide,patchSide,patchSide};vImage_AffineTransformtransform={warpingMatrix(0,0),warpingMatrix(0,1),war

objective-c - dispatch_async 比 performSelectorInBackground 慢 :?

在我的应用程序中,我使用performSelectorInBackground:从磁盘加载图像。在使用dispatch_async进行一些单元测试后,我决定用dispatch_async调用替换我的performSelectorInBackground。dispatch_queue_tcurrentBackgroundQueue=dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH,0);dispatch_async(currentBackgroundQueue,^{[selfgetImageFromDisk:sPathdeleg

subprocess.CalledProcessError: Command ‘(‘lsb_release‘, ‘-a‘)‘ returned non-zero exit status 1.

ERROR:Exception:Traceback(mostrecentcalllast): File"/usr/local/lib/python3.8/site-packages/pip/_internal/cli/base_command.py",line180,in_main  status=self.run(options,args) File"/usr/local/lib/python3.8/site-packages/pip/_internal/cli/req_command.py",line204,inwrapper  returnfunc(self,options,args) 

ios - 在重复的 for 循环中对 dispatch_group_leave() 的不平衡调用

我正在使用分派(dispatch)组来获取数据字符串。这是一段代码,我不确定为什么会在这段代码中得到Unbalancedcalltodispatch_group_leave()。varqueue=DispatchQueue(label:"extractStringQueue",attributes:.concurrent)queue.async{letm_group=DispatchGroup()letweeks=self.weekDataArrayforweekinweeks{fordayinweek.dayDataArray{m_group.enter()day.processSt