JuliaLang/julia

wanted: `open(create=true, exclusive=true)` dead or alive

Open

#33.947 aperta il 26 nov 2019

Vedi su GitHub
 (2 commenti) (1 reazione) (0 assegnatari)Julia (5773 fork)batch import
featuregood first issue

Metriche repository

Star
 (48.709 star)
Metriche merge PR
 (Merge medio 20g 6h) (157 PR mergiate in 30 g)

Descrizione

Sometimes useful, for creating atomic lockfiles (https://github.com/vtjnash/Pidfile.jl) or secure tempfiles: https://github.com/JuliaLang/julia/blob/31bf76f8a1719e07612b9af4196bfc924cf73e21/base/file.jl#L586

The exclusive=true flag (only valid in combination with create=true) should simply map the the underlying O_EXCL option to open (this exists everywhere that Julia runs).

(could also try to add O_NOFOLLOW, though FILE_FLAG_OPEN_REPARSE_POINT is more like O_SYMLINK, and so is hard to implement everywhere. And there's a couple others like RANDOM, SEQUENTIAL, SYNC, DSYNC, NOATIME, DIRECT, and SHORT_LIVED that could even be filtered out when not supported.)

Guida contributor