> The teardown of a Process launched by `ProcessBuilder` includes the closing > of streams and ensuring the termination of the process is the responsibility > of the caller. The `Process.close()` method provides a clear and obvious way > to ensure all the streams are closed and the process terminated. > > The try-with-resources statement is frequently used to open streams and > ensure they are closed on exiting the block. By implementing > `AutoClosable.close()` the completeness of closing the streams and process > termination can be done by try-with-resources. > > The actions of the `close()` method are to close each stream and destroy the > process if it has not terminated.
Roger Riggs has updated the pull request incrementally with one additional commit since the last revision: Review comment updates to handle cases where stream close methods might throw exceptions other then IOException and add them to the suppressed exceptions. Update the spec and @implSpec to be clear about exception handling and how the process is terminated with destroyForcibly. ------------- Changes: - all: https://git.openjdk.org/jdk/pull/26649/files - new: https://git.openjdk.org/jdk/pull/26649/files/f65dcf65..b6588f23 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=26649&range=18 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=26649&range=17-18 Stats: 18 lines in 1 file changed: 7 ins; 1 del; 10 mod Patch: https://git.openjdk.org/jdk/pull/26649.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/26649/head:pull/26649 PR: https://git.openjdk.org/jdk/pull/26649
