On 2 Sep 2015 at 15:44, Jeremy Maitin-Shepard wrote:
The approach you just suggested doesn't handle the case where you open a file, and then it gets moved before the sibling lookup.
Fair enough; I think the desired semantics would depend on the particular case. It seems there is always a time at which you issue the open call in order to open/create the sibling file, and there will inevitably be a race between that and concurrently moving the original file.
Indeed. AFIO generally provides race guarantees for sibling lookups to the level of the parent directory only i.e. the parent directory and anything above it may be permuting and that is not racy, but the contents of the parent directory and deeper are not race free. Each operation has different guarantees on different platforms, and those are listed per operation in the reference docs. Niall -- ned Productions Limited Consulting http://www.nedproductions.biz/ http://ie.linkedin.com/in/nialldouglas/