问题标签 [python-multithreading]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
237 浏览

python - python中多线程中的意外行为

我是 python 新手,尝试理解 python 中多线程的概念。根据我在 Unix 多线程编程方面的知识,如果 main 函数正在终止,则由 main 函数创建的线程也将终止,而不管它们在线程中所做的工作(如果我们不使用任何 pthread_join() 函数)。

但是在通过 python 中的多线程时,我没有看到这个功能。即使我的主线程完成了它的工作,我的线程仍在成功运行。所以我想知道,Python 和 Unix 中的线程表现不同......或者我错过了一些东西。请帮助理解python中的这个线程功能。这是我在 python 中使用的代码。

0 投票
2 回答
710 浏览

python - Python:Tkinter 中的 after() 是否具有多线程方法?

我正在编写一个物理模拟程序,发现after()很有用。

我曾经想为物理计算和模拟创建一个线程。但是当我终于注意到这个功能时,我改用了它。

所以,我很好奇 Tkinter 是如何实现这个功能的。是多线程吗?

0 投票
1 回答
1186 浏览

python - 为什么我不能在 multiprocessing.Pool 中使用 operator.itemgetter?

以下程序:

失败并出现以下错误:

为什么会出现错误(在 Linux x64 上的 cPython 2.7 和 3.2 上),如果我取消注释第三行,为什么它会消失?

0 投票
0 回答
357 浏览

python - python多线程ssh应用程序

我有一个应用程序,我拼凑在一起尝试生成 3 个线程并同时通过 ssh 进入服务器。我写了一个明显带有冒犯性的编码应用程序,我知道这是错误的,我正在寻找一些指导,以完成我上面提到的最初的最终目标。

对于参数传递,我知道我需要稍后使用 cmd 或 cmd2 之类的东西来处理它,但现在这不是我主要关心的问题。

我知道现在我正在生成一个子进程并连续做事。我期待着您的回复。

0 投票
1 回答
7401 浏览

python - python无法启动新线程

我正在构建一个多线程应用程序。

我已经设置了一个线程池。[一个大小为 N 的队列和从队列中获取数据的 N 个工人]

完成所有任务后,我使用

其中任务是队列。

应用程序似乎运行平稳,直到某个时间点(例如 20 分钟后)突然终止并出现错误

有任何想法吗?

编辑:线程是守护线程,代码如下:

守护线程何时被杀死?应用程序何时完成或 work() 何时完成?

看看线程池和工人(它来自一个食谱)

也可能是因为我在循环中创建 SWorker 对象的问题?旧的 SWorker(垃圾收集?)会发生什么?

0 投票
1 回答
1719 浏览

python - Tkinter.Tk() 和线程

Tkinter 和线程有一个有趣的问题:我有一个基于 Tkinter 的 GUI 和一些与 mainloop 一起执行的代码。如果我只做一次,它就像魅力一样。但是如果我这样做两次,Tkinter.Tk() 会阻塞两个线程:GUI 和 MainThread。

这是代码(受另一个 Tkinter vs threading 主题的启发):

结果:winxp + python 2.7.1(默认安装)

OS X 10.6.7 + python 2.7.1 的 UPD 结果

0 投票
1 回答
275 浏览

python - Python多处理进程和管道 - 700个进程合理吗?

服务器运行 32 位 8 核的 Red Hat。

必须实例化的公司类是不可腌制的。

我尝试了线程,但达到 4 到 7 个并发线程会使性能下降到顺序处理的性能。这部分是由于我的无知,PySimpleClient 和底层 C++ 实现。

我尝试使用队列进行多处理,但这并不强大,也没有提高性能。

我目前正在成功运行 60 个多进程进程,每个进程都有一个管道。到目前为止,性能非常好,鲁棒性非常好。

但我至少需要 700 个进程。700合理吗?

0 投票
1 回答
725 浏览

queue - Python-多线程时间敏感任务

我已将大部分问题放在代码本身中,但要回顾一下要点(Python2.7):

  • 我想确保以后不会为自己造成大量内存泄漏。
  • 我注意到,当我在我的 linuxbox 上的 putty 或 VNC 中以 40 的计数运行它时,我并不总是得到所有的输出,但是当我在 Windows 上使用 IDLE 和 Aptana 时,我做到了。
  • 是的,我知道队列的目的是错开你的线程,这样你就不会淹没系统的内存,但手头的任务是时间敏感的,所以无论有多少或多少,只要检测到它们就需要立即处理有; 我发现当我有队列时,我可以清楚地指示任务何时完成,而不是让垃圾收集器猜测。
  • 我仍然不知道为什么我能够在线程或队列对象上使用 .join() 。
  • 提示,技巧,一般帮助。
  • 谢谢阅读。
0 投票
1 回答
1142 浏览

python - 在python中重新启动线程并检查异常

我已经绘制了我想遵循的流程的流程图,但无法弄清楚如何执行此流程。目前我有以下内容。

t1 是一个不是cherrypy的数据库插入脚本。

我想按照这个流程图

0 投票
2 回答
4205 浏览

python - python线程模块中的Event和Lock有什么区别?

在这些场景中是否Event做同样的事情?Lock

其他: