iOS上的懒惰执行技术

时间:2012-12-11 23:35:11

标签: iphone objective-c ios mkmapview afnetworking

我是iOS新手,开发应用与地图互动。

以下情况:

当regionDidChangeAnimated:delegate调用时,我必须发送一些点数据请求。 我正在使用AFNetworking。 但是如果过度滚动地图会导致对服务器的请求过多。

在过度地图滚动过程中,每次“Touch Up”结束'regionDidChangeAnimated', 所以如果可能的话,我想以懒惰的方式提出这个请求。

我的想法是: 在regionDidChangeAnimated中,保持在特定时间(0.2秒或半秒)内发送请求, 如果没有更多regionDidChangeAnimated发生,则将请求发送到服务器。

请提出任何建议。

1 个答案:

答案 0 :(得分:2)

您可以使用NSTimer执行此操作。当您收到regionDidChangeAnimated电话时,请将计时器设置为0.2秒。如果计时器到期,操作系统将调用您告诉计时器调用的任何内容,然后如果没有发生其他regionDidChangeAnimated调用,您可以向服务器发出请求。