您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python多线程访问同一文件

Python多线程访问同一文件

锁定是一种可能的解决方案,但是我更喜欢由单个单独的线程处理每个外部资源(包括文件)的通用体系结构。其他线程将工作请求发送到Queue.Queue实例上的专用线程(并在需要返回结果时提供自己的单独队列作为工作请求参数的一部分),专用线程将大部分时间都花在等待.geton该队列,并在收到请求时继续执行它(并在需要时在传入队列中返回结果)。

我在“坚果中的Python”中提供了这种方法的详细示例。Python的Queue本质上是线程安全的,极大地简化了您的生活。

这种架构的优点之一是,如果您决定将一些工作切换到一个单独的进程而不是一个单独的线程(例如,利用多个内核),则可以平稳地转换为进程-multiprocessing提供自己的类似工作Queue类型来实现如丝绸般平滑的过渡;-)。

python 2022/1/1 18:48:38 有388人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶