objective-c - iOS:计时器检查属性是否为 nil 后,事件将属性设置为 nil

标签 objective-c ios events timer

我有一个计时器,如果属性不为零,则对属性执行操作,但在检查 nil 和执行操作之间,事件会将该属性设置为 nil。事实上,有几个事件都可能使该属性为零。计时器正在检查的其他属性也是一样的。

解决这个问题最优雅且可扩展的方法是什么?

  1. 将属性的每次使用都包含在同步块(synchronized block)中吗?
  2. 在计时器开始时设置/释放锁并在每个事件中检查等待锁?
  3. 还有别的事吗?

最佳答案

我不太确定您的具体情况,但您可能需要考虑向属性编写一个自定义 setter ,以便在计时器设置为 nil 时取消计时器?

关于objective-c - iOS:计时器检查属性是否为 nil 后,事件将属性设置为 nil,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11017888/

相关文章:

ios - AFNetworking 无法访问 setAuthenticationChallengeBlock

iOS - 双值运算

ios - init方法中的弧导致内存泄漏

javascript - javascript中的dispatchEvent所有元素

objective-c - 命令行工具中的 NSTimer

objective-c - UIPickerView 不改变字体 iOS 9.1

ios - iPhone 和 iPad 项目分离

android - React Native 中 Text 组件的 accessible、a​​ccessibilityLabel 和 accessibilityHint 属性有什么区别?

events - 我们在Fabric.js中有 Canvas 修改事件吗?

c# - 非 UI 线程之间的事件