Is a successful call to write(2) atomic?
Ronald F. Guilmette
rfg at tristatelogic.com
Wed Jun 16 23:18:24 UTC 2021
In message <af9666f4-f327-432e-5b10-100557aa9cf5 at panix.com>,
Kurt Hackenberg <kh at panix.com> wrote:
>Since you only open the file once, you should seek to end of file before
>each write, as somebody else pointed out. You should do that seek, and
>the write, while holding the file lock. That is:
>
> lock file
> seek to EOF
> write
> unlock file
>
>Does your code do that?
Nope. I'll give it a try. Thanks!
>The reason, of course, is that some other process could move end of file
>out from under you while you do not hold the file lock.
Sounds entirely plausible.
Regards,
rfg
More information about the freebsd-questions
mailing list