在Android开发过程中,有时候会遇到这样的情况,在一个线程中,执行A操作,B操作需要等A操作结束后才进行,因此需要wait,在java中可以如下代码实现

Handler mBlueHandler = new Handler(Looper.getMainLooper());            Task task = new Task();            mBlueHandler.post(task);            while (!task.finish) {                synchronized (task) {                    try {                        task.wait();                    } catch (InterruptedException e) {                        e.printStackTrace();                    }                }            }        }

class Task implements Runnable {        boolean finish = false;        @Override        public void run() {           。。。。//具体执行的操作            synchronized (Task.this) {                finish = true;                Task.this.notifyAll();            }        }    }

Handler post出task,task中设一个标志位,当具体操作结束后,将标志位置为有效,然后通知Handler执行下面操作,否则一直等待

更多相关文章

  1. Android(安卓)5种倒计时的实现
  2. AspectJ
  3. Android开发中Activity切换导致的onCreate重复执行的问题
  4. Android-SQLite使用总结
  5. 使用AlertDialog实现使用在android中弹出对话框,询问用户是否继续
  6. android studio-toolbar的使用
  7. Android的手势操作识别
  8. android 初始化时获得控件位置,宽高的属性
  9. Android(安卓)AysncTask 从源码角度简单理解它的使用限制原因

随机推荐

  1. Android实战技巧之十一:Android Studio和G
  2. [深入理解Android卷一全文-第六章]深入理
  3. 按下子活动后退按钮后,Android主要活动的
  4. Android Robotium如何管理测试用例的执行
  5. Android程序老是报错
  6. Java与C互相调用实例详解
  7. 王家林最受欢迎的一站式云计算大数据和移
  8. ffmpeg从视频中提取帧时间戳
  9. Android Web-View:将本地Javascript文件注
  10. Android各种蓝牙设备的UUID