Options:
- When you open a file, you get a read and write handle to allow simultaneous operations
- A program can rewind a socket and start writing again at the beginning of the socket
- A program writes to a socket, it can read its data back after closing the socket
- A socket can be simultaneously read and written