add nonblock mode