美文网首页
多进程下使用Queue队列报错

多进程下使用Queue队列报错

作者: 北游_ | 来源:发表于2018-06-13 10:20 被阅读34次

原项目在未加入多进程模块的情况下,queue模块导入生成的队列能正常使用。
但是加入多进程后,执行报错 TypeError: can't pickle _thread.lock objects

网上查阅资料:

  • from queue import Queue 修改为 from multiprocessing import Queue 即可修复该bug。
  • 多进程模块中的队列Queue的使用方法与queue中的使用方法一致Queue

bug原因:

  • 在多进程模式下,queue模块的队列,数据无法在多个进程之间共享。
  • multiprocessing模块的队列,可以在多进程之间共享同一个变量的数据

相关文章

  • 多进程下使用Queue队列报错

    原项目在未加入多进程模块的情况下,queue模块导入生成的队列能正常使用。但是加入多进程后,执行报错 TypeEr...

  • 爬虫 ----队列、多线程

    1.队列 使用Queue 队列的重点:常规队列操作[LILO队列] 队列的特点:线程安全的! 2.多进程 用Que...

  • python

    多进程Manger方式数据共享(48条消息) 进程池Pool结合Manager中的Queue队列的使用_chunt...

  • 效率提升之进程同步(Queue)

    Queue:共享消息队列 Queue 模块来提供进程间通信的机制,从而让线程之间可以互相分享数据。 queue队列...

  • Queue模块

    一、class Queue.Queue 类 Queue类表示使用FIFO队列 Queue.qsize()返回队列的...

  • laravel 定时任务不执行了 ?

    linux 服务端使用 pm2 开启 php artisan queue:work 守护进程, 突然 队列不工作了...

  • 20.2、python进程间通信——队列和管道

    进程间通信——队列和管道(multiprocess.Queue、multiprocess.Pipe) 进程间通信 ...

  • 8.python多进程之队列

    一、队列 IPC(Inter-Process Communication)进程之间通信 队列先进先出 Queue(...

  • Socket 通信之 UDP 通信

    前段时间,我们在这篇文章中谈到了多进程和进程之间的通信方式,主要谈到了本地进程之间使用队列(Queue)进程通信,...

  • Laravel —— 队列配置 Supervisor

    安装Supervisor Supervisor 是 Linux 系统中常用的进程守护程序。如果队列进程 queue...

网友评论

      本文标题:多进程下使用Queue队列报错

      本文链接:https://www.haomeiwen.com/subject/cgadeftx.html