add noblocking write