繁体   English   中英

我应该使用哪种GCD队列或计时器作为去抖功能

[英]what kind of GCD queue or timer should I use for a debounce function

刚学习GCD并需要一些指导。 我想设置一个反跳功能,以便在用户重新登录时5分钟内不会显示我正在关注的用户的注销通知。在这种情况下,我希望延迟的注销UI通知将添加到超时队列中,以从现在起5分钟执行-除非该用户重新登录,否则在这种情况下我将取消队列中的特定通知。 (请注意,这些示例中的用户不是我-当前登录的活动用户)。

我应该使用哪种类型的GCD队列?

  • 主要
  • QOS_CLASS_USER_INTERACTIVE
  • QOS_CLASS_USER_INITIATED,
  • QOS_CLASS_UTILITY,QOS_CLASS_BACKGROUND

如何消除方法调用的反跳?

我还找到了一个使用计时器的示例-与GCD通话的幕后内容不同还是相同?

键入Swift时进行搜索

GCD最适合“ GCD工作,在这些工作中,您需要设置一些要完成的工作,并且在此之后无需进行任何调整。

您想要的一个简单版本是使用NSTimer 如果用户登录,则使计时器无效。 如果计时器存活并触发,您将发送通知。

如果由于某种原因需要在其中包含额外的线程,请查看NSOperationQueue而不是GCD 这样您就可以检查队列并应用取消逻辑。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM