Upon issuing a read
call in the receiving thread, the "receiver" will be in "sleep" mode (also called "blocked") until one of the following happens:
- The "sender" closed the stream.
- The thread, in which the "receiver" runs, is interrupted.
- The "sender" sends something down the stream.
These are the only ways you can control the "receiver"'s behaviour.
If you think you must be able to pass signals, then you're most likely doing something wrong.