iOS委托中解决异步问题
来源:互联网 发布:战国无双2知乎 编辑:程序博客网 时间:2024/05/16 14:03
大家先看一段伪代码:
fun
{
A( )
if(condition == true) {
B( )
}
}
满足条件condition,才会执行B,而condition的值是在函数A中得到的。
但是呢,A中有异步的委托,也就是,在执行完A后,它的委托函数还没有执行,也就是 condition的值还没有真正改变,而只有执行完 fun
之后,才会去执行委托函数。怎么解决这个问题呢?
纠结了很久,今天总算有了一点注意,异步,异步,异步,多线程,不是常听说互斥可以解决吗?
对头,就新增一个布尔变量,设为false,只有变为true的时候,才会判断例子中的if条件,否则sleep(),而设true的情况恰好发生在委托的函数中。这样就是
fun
{
A( )
while(b == false)
sleep(5);
if(condition == true) {
B( )
}
}
这样应该可以了吧,不知OC中有没有sleep类似功能的函数,也希望大家提出有效的解决方案。
- iOS委托中解决异步问题
- node中使用promise解决异步问题
- 线程+异步委托解决因耗时长造成界面假死问题
- deferred解决异步问题
- promise 解决异步问题
- C#中委托异步调用输出日志
- android开发中解决ListView异步加载图片错位问题
- 解决Android ListView中图片异步加载错位问题
- -------------解决Android ListView中图片异步加载错位问题
- 异步委托
- 异步委托
- 异步委托
- 异步委托
- 异步委托
- 异步委托-等待委托
- ios中协议与委托
- iOS中常用委托方法
- iOS中解决各种手势冲突问题
- 哈希链表 操作大全 实现
- 【Doing1】Java 学习之路——过程篇、工具篇、方法篇、资源篇、书籍篇(有一定基础之后再看)
- 多线程练习----读者写者问题
- gcc
- 深入OSS开发
- iOS委托中解决异步问题
- .NET面试题
- smarty内建函数
- ssh整合第一个异常
- getElementById、getElementByName和getElementByTagName
- 错误集合
- win7下Mysql5.5设置成utf8,但还是不能插入中文
- 严重: End event threw exception java.lang.reflect.InvocationTargetException at sun.reflect.GeneratedM
- ios cocos2d cocos3d box2d [21] NSMutableArray 循环删除