IOS开发中的死锁问题

5 篇文章 0 订阅

最近开发中遇到的死锁问题比较多, 近段时间总结了下还是基础不够扎实:

在继续的开发过程中, 会不定期更新开发中遇到的并发死锁问题

2016-11-7

今天遇到个数据库并发问题问题 

一般数据库查询结构如下:

@Semaphore_Wait(MUTEX)

[self yourOwnHandle:^(FMDatabase *db,BOOL *rollback) {

id result;

// query update operation ....bla bla bra

block(result)


}

@Semaphore_Single(MUTEX)


在外部使用可能会出现bug, 如果你这样使用:
@begin ViewController.m
{
@property resultForVc
}

-(void) xxxMethod{

方法中我们调用数据库查询方法得到结果 reuslt
此时如果: _resultForVc = result 会导致什么结果呢 ?
结果会导致dbqueue无法释放, 因为在内部定义的reuslt生命周期重定义到了ViewController中
}

@end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值