gpt4 book ai didi

objective-c - NSURL连接优化

转载 作者:可可西里 更新时间:2023-11-01 04:44:52 26 4
gpt4 key购买 nike

我试图通过 iPhone 了解 NSURLConnection 在 3G 网络上的性能。我有以下测试代码

-(void)doTest2 {
max = 5;
NSURL *url = [NSURL URLWithString:@"http://www.google.com"];
NSURLRequest *request2 = [[[NSURLRequest alloc] initWithURL:url] autorelease];
NSURLConnection *conn=[[NSURLConnection alloc] initWithRequest:request2 delegate:self];
self.startDate = [NSDate date];
if (conn)
{
receivedData = [[NSMutableData data] retain];
} }

- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
self.endDate = [NSDate date];
NSTimeInterval interval = [self.endDate timeIntervalSinceDate:self.startDate];
NSLog(@"Time:%f Size:%u", interval, [receivedData length]);
[receivedData release];

count = count + 1;
if (count == max) {
count = 0;
sleep(3);
}
self.doTest2;}

第一个请求很慢(超过 1 秒)。请求 2-5 很快(不到 0.25 秒)。如果我睡了 3 秒或更长时间,则 sleep 后的第一个请求很慢。但如果我睡不到 3 秒,那就快了。有什么想法吗?

最佳答案

可能有多种原因:在第一次请求时,TCP 堆栈需要解析 google.com 的 DNS 名称,然后将其缓存。此外,初始化 3G 网络可能需要一些时间。

关于objective-c - NSURL连接优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3538655/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com