首页 > 其他 > 详细

单测中会用到的类,锁+定时器,等待回调的值返回

时间:2015-03-19 16:41:22      阅读:309      评论:0      收藏:0      [点我收藏+]
    public class BaseJunit {
    private Timer timer;
    private Object mSync = new Object();

    protected void Wait() {
        synchronized (mSync) {
            if (timer != null) {
                timer.cancel();
                timer.purge();
                timer = null;
            }
            timer = new Timer();
            timer.schedule(task, 3 * 1000);
        }
        synchronized (mSync) {
            try {
                mSync.wait();
            } catch (InterruptedException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }

    protected TimerTask task = new TimerTask() {

        @Override
        public void run() {
            // TODO Auto-generated method stub
            Notify();
        }

    };

    protected void Notify() {
        synchronized (mSync) {
            mSync.notifyAll();
        }
    }

    protected void removeTimerTask() {
        synchronized (mSync) {
            if (timer != null) {
                timer.cancel();
                timer.purge();
                timer = null;
            }
        }
    }

单测中会用到的类,锁+定时器,等待回调的值返回

原文:http://my.oschina.net/u/435726/blog/388995

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!