One thing most developers don't understand about IO streams is flushing being an option rather than a necessity. If a write operation necessitated a flush op every time the former was invoked, the existence of the latter would be pointless. What should actually happen is invoking flush only to ensure the data is written to the target. Mindlessly invoking it will kill the performance and the optimization made for the target.
This Mastodon instance is for people interested in technology. Discussions aren't limited to technology, because tech folks shouldn't be limited to technology either!