Variable 'bop' is uninitialized when captured by block
2024-08-30 14:41:23
代码:
- (void)doTest {
NSBlockOperation * bop = [NSBlockOperation blockOperationWithBlock:^{
if (!bop.isCancelled) {
// ...
// doSomething
} }]; [mQueue addOperation:bop];
}
这段代码是有明显问题的,如果用Analyze来检查的话,就会有警告Variable 'bop' is uninitialized when captured by block.
其实很简单,问题出在block内部对于bop的使用上. 在进入block的时候,bop是一个未初始化的变量.
解决方法很简单,加上__block修饰为block变量就好了.
- (void)doTest {
__block NSBlockOperation * bop = [NSBlockOperation blockOperationWithBlock:^{
if (!bop.isCancelled) {
// ...
// doSomething
} }]; [mQueue addOperation:bop];
}
最新文章
- [译]ZOOKEEPER RECIPES-Barriers
- jQuery中.parent和.parents的区别
- antuomake 生成configure的使用
- JS拖拽原理
- ios专题 - CocoaPods - 初次体验
- 感知机和线性单元的C#版本
- SDL 2.0 如何在 windows 上使用?
- MARKY一下。
- 安装python3
- leetcode144-先序遍历非递归实现
- [Oracle]快速生成大量模拟数据的方法
- What Would you Find out about MS908CV ?
- vuex实践之路——笔记本应用(三)
- Android设置横屏竖屏
- kafka系列 -- 基础概念
- 用Execute操作数据库
- css继承和层叠
- 【我的Android进阶之旅】 RxJava 理解Backpressure并解决异常 rx.exceptions.MissingBackpressureException
- 排除maven jar冲突 maven tomcat插件启动报错 filter转换异常
- jdbc 中 excute executeUpdate的用法作用
热门文章
- 【HIHOCODER 1529】 不上升序列
- JAVA面向过程VS面向对象
- UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 167: illegal multibyte sequence
- addEvenListener('DOMContentLoaded',function(){})
- centos 部署 自定义(succes)
- AVL树总结
- Java-计算程序运行时间
- Codeforces Round #405 (rated, Div. 2, based on VK Cup 2017 Round 1) 菜鸡只会ABC!
- 自定义Title
- SoapUI offen used scripts