I have an application which processes HTTP requests, and it prints out certain information about the request as it processes it to
stdout. In this scenario, I have run
disown -h and
disown on the process, after backgrounding it. It still continues to print to
stdout, which is expected. Further, this process is started within an SSH session. Assume I have flaky internet access, and after doing all of the above, the connection is interrupted, without SSH being aware that this has occurred. Naturally, this takes a few moments before SSH is actually aware that the connection has interrupted.
During this time, the application starts to experience timeouts when processing requests, until the SSH session actually dies. Is this due to buffering issues involving its writing to
stdout when the PTY no longer is exists?