[TOC]
## 异步操作和轮询
默认情况下playbook中的任务执行时会一直保持连接,直到该任务在每个节点都执行完毕,你也可以对执行时间非常长的操作使用异步模式。
```
---
- hosts: all
remote_user: root
tasks:
- name: simulate long running op (15 sec), wait for up to 45 sec, poll every 5 sec
command: /bin/sleep 15
async: 45 #等待45秒
poll: 5 # 每隔5秒检查一次,如果设置为0,则表示不检查回调结果
```
示例:
```
---
- name: 'YUM - fire and forget task'
yum: name=docker-io state=installed
async: 1000
poll: 0
register: yum_sleeper
- name: 'YUM - check on fire and forget task'
async_status: jid={{ yum_sleeper.ansible_job_id }}
register: job_result
until: job_result.finished
retries: 30
```
