【发布时间】:2018-08-14 23:58:32
【问题描述】:
基于Is file append atomic in UNIX? 和其他来源,它看起来像在现代 Linux 上,我可以在附加模式下打开一个文件并从多个进程向它写入小块 (PIPE_BUF) 而不必担心撕裂。
这些限制是否通过syswrite 扩展到 Ruby?专门针对这段代码:
f = File.new('...', 'a')
f.syswrite("short string\n")
我可以期望写入不会与其他进程以相同的方式写入交错吗?还是有一些我还不知道的缓冲/潜在分裂?
假设 ruby >= 2.3
【问题讨论】: