On 6/12/2013 10:07 AM, Andrei Alexandrescu wrote:
On 6/12/13 12:40 PM, Walter Bright wrote:
You are proposing that this repeated write of the first sector be done
for all file output.

No, he's proposing that only the very first write flushes. Not every write. I'd
argue it's a bizarre thing to do, but not that it's necessarily slow.

I meant for every file being output.

And, again, it is forcing two writes of the first block, at a minimum. The perf cost can be hidden by write caching, but to rely on that is bad design and undermines how the I/O system is set up and tuned.

I predict a WTF bug report on this in the future, as someone with an unusual device attached is looking for the cause of why his D program writing to it behaves badly. Or he just writes it off as "D sux".

There's a *reason* why stdio distinguishes between block devices and character devices.

Reply via email to