Use asynchronous I/O to download photos

    :param photos: The photos to be downloaded
    :type photos: list of dicts

def event_download_photos(photos):
    """Use asynchronous I/O to download photos

    :param photos: The photos to be downloaded
    :type photos: list of dicts
    """
    try:
        assert gevent
        assert grequests
    except NameError:
        logger.error('You need install gevent module. Aborting...')
        sys.exit(1)
    global counter
    counter = len(photos)
    from gevent.pool import Pool
    pool = Pool(multiprocessing.cpu_count())
    jobs = [pool.spawn(download_photo_async, photo) for photo in photos]
    pool.join()