python - 如果两个 python 脚本想写在同一个文件中会发生什么?

标签 python file io

我有一个管道,它在某些时候将工作分成多个子流程,这些子流程并行执行相同的事情。因此它们的输出应该进入同一个文件。

说所有这些进程都应该写入同一个文件是不是太冒险了?或者如果 python 发现此资源已被占用,是否会尝试并重试?

最佳答案

这取决于系统。在 Windows 中,资源被锁定,您会得到一个异常。在 Linux 中,您可以使用两个进程写入文件(写入的数据可以混合)

理想情况下,在这种情况下,您应该使用信号量来同步对共享资源的访问。

如果使用信号量对您的需求来说太重了,那么唯一的选择就是写在单独的文件中...

编辑:正如 a later post 中的眼睛所指出的那样,资源管理器是处理并发编写器的另一种选择

关于python - 如果两个 python 脚本想写在同一个文件中会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7820021/

相关文章:

file - 如何将此语句的输出写入 Golang 中的文件

c++ - 如何将 C 输出文件读入 Matlab

python - 以数组格式返回该位置硬币所需的硬币数量

c# - 处理巨大的文本文件,C#。修改文件

python - wxPython中查找文本大小的正确方法

c - 搜索目录中的所有子目录

file - BizTalk - 带有多条记录页眉和页脚的平面文件 - 反汇编问题

java - 拥有仅使用 Java 内存的自定义文件实现的最简单方法是什么

python - list.append 在 python 3 : nonetype is not iterable?

python - 找出应该在哪里定义分析