timeout
non blocking channel ops