我想降低我的 mac os x 应用程序的数据速率(带宽限制)。
我已经尝试过将睡眠置于- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
方法中,但这对我没有帮助。
我也在检查这个问题
Limit NSURLConnection data rate? (带宽限制)
但这对我没有帮助。
是否有其他方法可以在目标 c 中实现带宽限制
问问题
562 次
1 回答
1
问题是工作发生在不同的线程上。
如果您确实需要进行带宽限制,那么几乎只有一种方法可以做到,那就是自己管理套接字连接。这基本上意味着要么编写自己的 HTTP 请求类,要么使用 libcurl。
请注意,如果您沿着这条路走下去,如果您需要在 iOS 上执行此操作,您还需要至少偶尔使用 NSURLConnection 或 NSURLSession 发出简短的高级请求,以保持蜂窝无线电保持清醒。
您还可以通过在您的应用程序中嵌入 HTTP 代理库,使用 NSURLSession 而不是 NSURLConnection 并将其配置为通过该代理发送所有请求,然后修改代理代码以限制它从读取数据的速度来进行节流插座。
这些方法都不适合胆小的人。
或者,如果您不关心应用程序本身是否进行节流,您可能会考虑使用许多带宽整形工具(例如网络链接调节器)。
于 2016-09-08T06:14:29.073 回答