草庐IT

put_async

全部标签

ios - 使用“dispatch_async(dispatch_get_main_queue(),^{block}) 更新 UI

我想在NSURLSession的完成block中更新UI。最初的实现并没有立即更新UI。它可能在20秒后更新了UI。这是最初的实现。NSURLSessionDataTask*task=[self.sessiondataTaskWithRequest:requestcompletionHandler:^(NSData*data,NSURLResponse*response,NSError*error){NSDictionary*jsonDict=[NSJSONSerializationJSONObjectWithData:dataoptions:0error:nil];UILabel*l

ios - 在 dispatch_async 和 dispatch_sysnc 中更新 UI 时的区别

比方说,我有一个名为session的NSURLSession,我想在downloadTaskWithRequest中更新我的UI。现在,情况1和情况2会发生什么:案例1:(dispatch_async)NSURLSession*session=[NSURLSessionsessionWithConfiguration:configuration];NSURLSessionDownloadTask*task=[sessiondownloadTaskWithRequest:requestcompletionHandler:^(NSURL*localFile,NSURLResponse*re

ios - Q :Get rows count by indexPath of tableView comes `Trying to put the stack in unreadable memory at:` error

在我的tableView委托(delegate)方法中:我在tableViewdelegate方法中得到了numberOfRows和numberOfSections:-(UITableViewCell*)tableView:(UITableView*)tableViewcellForRowAtIndexPath:(NSIndexPath*)indexPath和-(CGFloat)tableView:(UITableView*)tableViewheightForRowAtIndexPath:(NSIndexPath*)indexPath,但是在-(NSInteger)tableView

ios - dispatch_barrier_async 似乎对全局队列没有影响?

当我尝试GCD函数dispatch_barrier_async时,它在dispatch_queue_create创建的队列上按预期工作,而当我将它放在创建的全局队列中时dispatch_get_global_queue,屏障似乎不再起作用了==,有人可以解释一下吗?谢谢~thedemoimage 最佳答案 这并不奇怪,这是有记录的行为。如果您使用它来将一个block添加到您自己创建的队列中,那么它将阻塞所有其他block,直到它完成。如果将它添加到公共(public)队列,那么它的行为就像dispatch_async文档位于http

ios - dispatch_async 永远不会完成整个 block 的执行

我是GCD的新手,对它的简单使用似乎对我不起作用。我有以下代码:+(void)synchronizationTimerFired:(NSTimer*)theTimer{if((synchronizationUpNeededFlag)||(synchronizationDownNeededFlag)){if((!synchronizationUpInProgressDepthQuantity)&&(!synchronizationDownInProgressDepthQuantity)){dispatch_queue_tsynchronizationQueue=dispatch_queu

ios - Objective-C - 调用 dispatch_async 显示错误

我正在使用dispatch_async在其他方面做一些事情。dispatch_queue_tbackgroundQueue;在viewDidLoad中:-(void)viewDidLoad{[superviewDidLoad];//Doanyadditionalsetupafterloadingtheview.backgroundQueue=dispatch_queue_create("dispatchName",NULL);}使用它:dispatch_async(backgroundQueue,^{//Dosomething...});一切正常,直到我再次调用此方法。该应用因错误而崩

ios - 在 dispatch_async 中使 NSTimer 无效

我正在创建一个游戏,在游戏中我需要一个计时器。我工作得很好,但是当我滚动map时它会停止,然后当我完成滚动时它会再次开始。我用dispatch_async解决了这个问题。这是代码dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0),^{timer=[NSTimerscheduledTimerWithTimeInterval:1target:selfselector:@selector(timeNext)userInfo:nilrepeats:NO];[[NSRunLoopcurrentRu

ios - dispatch_async 中的 dispatch_sync

我只是想确认为什么需要这样做。我将此代码添加到KIImagePager(一个cocoapod)以加载应用本地的图像(默认代码从url加载图像)。根据同事的建议,这是我的工作代码:dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND,0),^{dispatch_sync(dispatch_get_main_queue(),^{[imageViewsetImage:[UIImageimageNamed:[aImageUrlsobjectAtIndex:i]]];;});});我注意到,如果我取

ios - XCode 项目 : should we put source code in separate folders for meaningful purpose

我是一名Java开发人员,也是ios开发的新手。在学习短语中,我尝试下载一些示例项目(包括从小型项目到中型项目)以了解它们在ios项目中的工作频率。正如我所见,他们经常将所有源文件放在一个文件夹中(包括头文件、源文件、.storyboard文件、xib文件...),我认为这会使您的项目变得困惑。所以,我来这里是想问一个问题。我们是否应该根据用途将源代码放在单独的文件夹中,以使项目不那么困惑,对吗?例如,所有自定义核心数据模型类文件都应放入Model文件夹中。所有View文件(如.storyboard、.xib文件...)都应放入View文件夹中。所有Controller文件都应放入Co

接口定义,常见的接口,常见的接口请求方式,put请求和patch请求的区别

接口定义:应用程序编程接口,指前后端数据交互的一套标准,包括软件内部之间的接口,硬件之间的接口或者是软件对外的接口。常见的接口类型:    1,Webservice接口,主要用于服务端的接口,走soap协议通过http传输,请求报文和返回报文都是xml格式,测试的时候都需要用工具来进行调试,测试。可以使用的工具有SoapUI、jmeter、loadrunner等。     2,httpapi接口,API全称是(ApplicationPrommingInterface)主要通过http传输,请求报文格式是key-value格式,返回报文是json串,有get和post方法等。这也是最常用的两种请