title: FIFO (named pipe) messaging obstacles
body: <p>I plan to use Unix named pipes (mkfifo) for simple multi-process messaging.
  A message would be just a single line of text.</p>
  
  <p>Would you discourage me from that? What obstacles should I expect?</p>
  
  <p>I have noticed these limitations:</p>
  
  <ol>
  <li>A sender cannot continue until the message is received.</li>
  <li>A receiver is blocked until there are some data. Nonblocking IO would be needed
  when we need to stop the reading. For example, another thread could ask for that.</li>
  <li>The receiver could obtain many messages in a single read. These have to be processed
  before quiting.</li>
  <li>The max length of an atomic message is limited by 4096 bytes. That is the PIPE_BUF limit on Linux (see man 7 pipe).</li>
  </ol>
  
  <p>I will implement the messaging in Python. But the obstacles hold in general.</p>