zoukankan      html  css  js  c++  java
  • Python:浮动等待

    浮动等待达到某一条件

    def wait_until_expect_redis_result(redis_key, interval=1, max_waittime=30, expect_result='exist',redis_ip='127.48.167.201',redis_port=9052):
        """
        浮动等待redis队列为期待的结果
        :param redis_key: 如cache:task:expirefile:expired-redis
        :param interval:
        :param max_waittime:
        :param expect_result: exist/notexist
        :return:
        """
        print u'redis_ip:',redis_ip,u'redis_port:',redis_port
        wait_time = 0
        flag = ''
        times = int(max_waittime/interval)
        r = redis.Redis(host=redis_ip,port=redis_port,password='WCS_REDIS_!(0)')
        print u'redis_key: ',redis_key
        print u"获取当前redis队列中是否存在指定队列:"
        for i in range(0, times):
            redisQueue = r.keys(redis_key)
            print i,redisQueue
            if redisQueue == []:
                flag = 'notexist'
            else:
                flag = 'exist'
            if flag == expect_result:
                print u'
    Success. 当前redis队列[%s],和期望的[%s]一致,等待总时长:%s' %(flag, expect_result, wait_time)
                return redisQueue
            time.sleep(interval)
            wait_time = wait_time + interval
        print u"
    Error. 当前redis队列[%s],和期望的[%s]不一致,已到达允许等待最大时长:%s" % (flag, expect_result, max_waittime)
        raise AssertionError(u'Fail.')
    View Code
    每天努力一点,每天学习一点。 Keep Moving...
  • 相关阅读:
    电商-订单设计(2)
    学生-课程-成绩-教师表的设计
    电商-订单设计(1)
    WCF-错误集合002
    调用 WebService 请求因 HTTP 状态 407 失败
    SQLSERVER 中的事务嵌套
    sqlserver 中的异常捕获
    c# 和 sqlserver 中的事务
    ADO_NET 数据库连接字符串大全
    break循环和continue循环
  • 原文地址:https://www.cnblogs.com/channy14/p/14784909.html
Copyright © 2011-2022 走看看