Incorrect. When a shell session ends, it takes all of it's child processes (including background processes) with it. If you want to start something in the background and leave it running, you need to use nohup to disconnect it from the shell session.
Regarding recovering a remote shell session: it's gone. Depending upon the remote protocol (telnet, ssh, rsh) and the OS, the session may still be "running," but the programs running in it are attached to it, not the new one.