communicate to avoid deadlock from buffer overflow