JonasG
JonasG

Reputation: 9324

writeToFile:atomically: what does atomically mean?

I am wondering what the atomically: parameter stands for in the writeToFile:atomically: method (-[NSArray writeToFile:atomically:] for example). It is common to pass YES for atomically:, but I don't know what it means.

Upvotes: 61

Views: 18157

Answers (2)

Jack Danger
Jack Danger

Reputation: 1406

An 'atomic write' is one where you are guaranteed to have either a correct, complete write to the file or an error. There's no chance that, say, half of the write will work and then something bad happens (lost power, drive crash, etc) and the rest of the write fails. It's all or nothing. This is generally what you want.

Upvotes: 105

Darko Kenda
Darko Kenda

Reputation: 4960

atomically

If YES, the data is written to a backup file, and then—assuming no errors occur—the backup file is renamed to the name specified by path; otherwise, the data is written directly to path.

Upvotes: 40

Related Questions