Add non-blocking pipe option