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

多个线程在Python中写入同一CSV

多个线程在Python中写入同一CSV

我不确定是否csvwriter是线程安全的。该文档未指定,因此为了安全起见,如果多个线程使用同一个对象,则应使用来保护用法threading.Lock

# create the lock
import threading
csv_writer_lock = threading.Lock()

def downloadThread(arguments......):
    # pass csv_writer_lock somehow
    # Note: use csv_writer_lock on *any* access
    # Some code.....
    with csv_writer_lock:
        writer.writerow(re.split(',', line.decode()))

话虽如此downloadThread,将写任务提交给执行者可能确实更优雅,而不是像这样显式地使用锁。

python 2022/1/1 18:27:28 有194人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

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

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

请先登录

推荐问题


联系我
置顶