Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python线程计算负载_Python_Multithreading - Fatal编程技术网

python线程计算负载

python线程计算负载,python,multithreading,Python,Multithreading,我需要一个进程来监视一个目录,如果有一个新文件,请处理该文件。所以我基本上实现如下 我的问题很简单:在监视时,我需要继续使用无限循环(While True)执行if检查。计算量是多少?严重吗?或者是否有更好的方法(例如,监视新文件时采用事件驱动的方法) 有关信息,请假设另一端正在运行一个巨大的进程,该进程生成要监视的文件,do\u analyze大约需要15分钟。) 您需要在mimimum(可能是python版本)上添加操作系统。大多数操作系统允许在目录中添加某种类型的监视文件更改,例如创建。例

我需要一个进程来监视一个目录,如果有一个新文件,请处理该文件。所以我基本上实现如下

我的问题很简单:在监视时,我需要继续使用无限循环(
While True
)执行
if
检查。计算量是多少?严重吗?或者是否有更好的方法(例如,监视新文件时采用事件驱动的方法)

有关信息,请假设另一端正在运行一个巨大的进程,该进程生成要监视的文件,
do\u analyze
大约需要15分钟。)


您需要在mimimum(可能是python版本)上添加操作系统。大多数操作系统允许在目录中添加某种类型的监视文件更改,例如创建。例如windows:。回答您的问题-是的,它很昂贵,需要100%的单处理器。您可以使用filesystem inotify,例如,您可以使用此库实现它:谢谢!那么如何计算
sleep()
函数呢?如果我间歇性地检查,比如
If filename:do_analyze(filename);其他:睡眠(10)
,会更好吗?
# a thread monitoring the result directory every 10 min.
# if there is a new file, push in the queue.
from treading import Timer
file_checker = Checker(some_directory)
timer = Timer(10*60, file_checker.check())
timer.start()

while True:
    filename = file_checker.pop()
    if filename:
          do_analyze(filename)