better use `blocking=False`