我的ASIHTTPRequest库存在问题。我有很多请求以异步方式运行。但不知何故,其中一个请求块会触发ui上的事件,直到完成为止。如果我不发送此请求,另一个请求将导致此问题。
此外,我注意到导致问题的请求,在我运行时无法启动
[req startAsynchronously];
首先延迟15-30秒。
你知道为什么会这样吗?这是我的请求的一个例子。所有这些都是这样的。
requestData = [[ASIHTTPRequest alloc] initWithURL:url]];
[requestData setUsername:@"username"];
[requestData setPassword:@"pass"];
[requestData setRequestKey:@"key"];
[requestData setRequestMethod:@"GET"];
[requestData setDelegate:self];
requestData.shouldAttemptPersistentConnection = NO;
[requestData startAsynchronous];
答案 0 :(得分:0)
ASIHTTPREQUST已经过时了,除非你做了更新,否则自2012年以来一直没有更新。尝试使用AFNetworking。
由于我从那时起甚至没有看过那个图书馆,所以我不知道确切的问题,因为现在可能还有很多问题,因为它还没有更新(除非你做了)。以下是您可以随时尝试的一些建议。尝试添加自己的块。
这里是背景中的异步(没有UI)
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), ^{ });
这是你在操纵UI并需要在主线程
上进行操作 dispatch_async(dispatch_get_main_queue(), ^{
});