Why use “lock file” instead of a programmable lock?

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP











up vote
0
down vote

favorite












Mark says at https://unix.stackexchange.com/a/467795/




One use for O_EXCL and O_CREAT with open() is to create a simple lock file. If multiple processes try to open the same file with the O_CREAT and O_EXCL flags, one will succeed and the rest will fail. Of course, if the file already exists, for example because a previous process exited without removing the file, none of the subsequent attempts will succeed, so this is not the most robust way to manage a lock.




What does "lock file" mean?
The quote seems to me that the program which creates a lock file should delete it before termination. If so, is a lock file not used for storing meaning data, but for some other purpose?



It seems a lock file is used as a lock to synchronize several processes.
What is the benefits and disadvantages of using a lock file compared to using a lock in source code?



Thanks.










share|improve this question























  • unix.stackexchange.com/q/143676/117549 and unix.stackexchange.com/q/12815/117549 and unix.stackexchange.com/q/22044/117549
    – Jeff Schaller
    8 mins ago










  • Possible duplicate of What are pid and lock files for?
    – Jeff Schaller
    8 mins ago














up vote
0
down vote

favorite












Mark says at https://unix.stackexchange.com/a/467795/




One use for O_EXCL and O_CREAT with open() is to create a simple lock file. If multiple processes try to open the same file with the O_CREAT and O_EXCL flags, one will succeed and the rest will fail. Of course, if the file already exists, for example because a previous process exited without removing the file, none of the subsequent attempts will succeed, so this is not the most robust way to manage a lock.




What does "lock file" mean?
The quote seems to me that the program which creates a lock file should delete it before termination. If so, is a lock file not used for storing meaning data, but for some other purpose?



It seems a lock file is used as a lock to synchronize several processes.
What is the benefits and disadvantages of using a lock file compared to using a lock in source code?



Thanks.










share|improve this question























  • unix.stackexchange.com/q/143676/117549 and unix.stackexchange.com/q/12815/117549 and unix.stackexchange.com/q/22044/117549
    – Jeff Schaller
    8 mins ago










  • Possible duplicate of What are pid and lock files for?
    – Jeff Schaller
    8 mins ago












up vote
0
down vote

favorite









up vote
0
down vote

favorite











Mark says at https://unix.stackexchange.com/a/467795/




One use for O_EXCL and O_CREAT with open() is to create a simple lock file. If multiple processes try to open the same file with the O_CREAT and O_EXCL flags, one will succeed and the rest will fail. Of course, if the file already exists, for example because a previous process exited without removing the file, none of the subsequent attempts will succeed, so this is not the most robust way to manage a lock.




What does "lock file" mean?
The quote seems to me that the program which creates a lock file should delete it before termination. If so, is a lock file not used for storing meaning data, but for some other purpose?



It seems a lock file is used as a lock to synchronize several processes.
What is the benefits and disadvantages of using a lock file compared to using a lock in source code?



Thanks.










share|improve this question















Mark says at https://unix.stackexchange.com/a/467795/




One use for O_EXCL and O_CREAT with open() is to create a simple lock file. If multiple processes try to open the same file with the O_CREAT and O_EXCL flags, one will succeed and the rest will fail. Of course, if the file already exists, for example because a previous process exited without removing the file, none of the subsequent attempts will succeed, so this is not the most robust way to manage a lock.




What does "lock file" mean?
The quote seems to me that the program which creates a lock file should delete it before termination. If so, is a lock file not used for storing meaning data, but for some other purpose?



It seems a lock file is used as a lock to synchronize several processes.
What is the benefits and disadvantages of using a lock file compared to using a lock in source code?



Thanks.







files io lock






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited 2 mins ago

























asked 17 mins ago









Tim

24.2k67233423




24.2k67233423











  • unix.stackexchange.com/q/143676/117549 and unix.stackexchange.com/q/12815/117549 and unix.stackexchange.com/q/22044/117549
    – Jeff Schaller
    8 mins ago










  • Possible duplicate of What are pid and lock files for?
    – Jeff Schaller
    8 mins ago
















  • unix.stackexchange.com/q/143676/117549 and unix.stackexchange.com/q/12815/117549 and unix.stackexchange.com/q/22044/117549
    – Jeff Schaller
    8 mins ago










  • Possible duplicate of What are pid and lock files for?
    – Jeff Schaller
    8 mins ago















unix.stackexchange.com/q/143676/117549 and unix.stackexchange.com/q/12815/117549 and unix.stackexchange.com/q/22044/117549
– Jeff Schaller
8 mins ago




unix.stackexchange.com/q/143676/117549 and unix.stackexchange.com/q/12815/117549 and unix.stackexchange.com/q/22044/117549
– Jeff Schaller
8 mins ago












Possible duplicate of What are pid and lock files for?
– Jeff Schaller
8 mins ago




Possible duplicate of What are pid and lock files for?
– Jeff Schaller
8 mins ago















active

oldest

votes











Your Answer







StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "106"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);

else
createEditor();

);

function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
convertImagesToLinks: false,
noModals: false,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);













 

draft saved


draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f476166%2fwhy-use-lock-file-instead-of-a-programmable-lock%23new-answer', 'question_page');

);

Post as a guest



































active

oldest

votes













active

oldest

votes









active

oldest

votes






active

oldest

votes















 

draft saved


draft discarded















































 


draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f476166%2fwhy-use-lock-file-instead-of-a-programmable-lock%23new-answer', 'question_page');

);

Post as a guest













































































Popular posts from this blog

How to check contact read email or not when send email to Individual?

Displaying single band from multi-band raster using QGIS

How many registers does an x86_64 CPU actually have?