标签: python-multithreading

如何在Python中使用线程?

我试图理解Python中的线程.我看过文档和示例,但坦率地说,很多例子都过于复杂,我很难理解它们.

你如何清楚地展示为多线程划分的任务?

python concurrency multithreading python-multithreading

1210
推荐指数
18
解决办法
94万
查看次数

函数调用超时

我正在调用Python中的一个函数,我知道它可能会停止并迫使我重新启动脚本.

如何调用该函数或我将其包装成什么,以便如果它花费的时间超过5秒,脚本会取消它并执行其他操作?

python multithreading timeout python-multithreading

259
推荐指数
14
解决办法
27万
查看次数

守护程序线程说明

Python文档中 它说:

线程可以标记为"守护程序线程".这个标志的意义在于,当只剩下守护进程线程时,整个Python程序都会退出.初始值继承自创建线程.

有没有人更明确地解释这意味着什么或一个实际的例子显示你想要将线程设置为何处daemonic


为我澄清一下:

因此,如果您希望它们在主线程退出后继续运行,那么您唯一不会将线程设置为守护程序的时间是?

python multithreading daemon python-multithreading

227
推荐指数
8
解决办法
12万
查看次数

在python线程中使用join()有什么用处

我正在研究python线程并遇到过join().

作者告诉我,如果线程处于守护进程模式,那么我需要使用,join()以便线程可以在主线程终止之前完成自己.

但我也看到他使用,t.join()即使t不是daemon

示例代码是这样的

import threading
import time
import logging

logging.basicConfig(level=logging.DEBUG,
                    format='(%(threadName)-10s) %(message)s',
                    )

def daemon():
    logging.debug('Starting')
    time.sleep(2)
    logging.debug('Exiting')

d = threading.Thread(name='daemon', target=daemon)
d.setDaemon(True)

def non_daemon():
    logging.debug('Starting')
    logging.debug('Exiting')

t = threading.Thread(name='non-daemon', target=non_daemon)

d.start()
t.start()

d.join()
t.join()
Run Code Online (Sandbox Code Playgroud)

我不知道什么是使用,t.join()因为它不是守护进程,即使我删除它我也看不到任何变化

python multithreading python-multithreading

167
推荐指数
7
解决办法
19万
查看次数

如何在Python中查找线程ID

我有一个多线程Python程序和一个实用程序函数writeLog(message),它写出一个时间戳后跟消息.不幸的是,结果日志文件没有给出哪个线程正在生成哪个消息的指示.

我希望writeLog()能够在消息中添加一些东西来识别哪个线程正在调用它.显然我可以让线程传递这些信息,但这将是更多的工作.我可以使用一些与os.getpid()等效的线程吗?

python multithreading python-multithreading python-logging

159
推荐指数
6
解决办法
18万
查看次数

列表是否是线程安全的?

我注意到经常建议使用具有多个线程的队列,而不是列表和.pop().这是因为列表不是线程安全的,还是出于其他原因?

python multithreading list python-multithreading python-3.x

137
推荐指数
3
解决办法
8万
查看次数

python:如何在主程序结束时终止一个线程

如果我有一个无限循环的线程,有没有办法在主程序结束时终止它(例如,当我按Ctrl+ C)?

python multithreading python-multithreading

74
推荐指数
6
解决办法
14万
查看次数

线程与线程

有什么之间的区别threadingthread模块在Python?

python multithreading python-multithreading

60
推荐指数
3
解决办法
3万
查看次数

从线程返回值

我如何让一个线程将一个元组或我选择的任何值返回给Python中的父元素?

python multithreading exit-code python-multithreading

56
推荐指数
6
解决办法
8万
查看次数

一个非常简单的多线程并行URL提取(没有队列)

我花了一整天的时间在Python中寻找最简单的多线程URL提取器,但我发现的大多数脚本都使用队列或多处理或复杂的库.

最后我自己写了一个,我作为答案报告.请随时提出任何改进建议.

我想其他人可能一直在寻找类似的东西.

python multithreading callback urlfetch python-multithreading

49
推荐指数
3
解决办法
4万
查看次数