add finish_nowait method