Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/323.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,在乞讨会上,我写了一个非常笼统的主题,即使我知道线程和过程,但我不知道这两者中哪一个更适合我的情况 好吧,那么。。代码: class Proces(object): [...] def Obsluz(self): proces = LRU(self.sekwencja, int(self.przydzielone_ramki)) proces.Symulacja("T") #.thread.join() def Threads(self): thread

在乞讨会上,我写了一个非常笼统的主题,即使我知道线程和过程,但我不知道这两者中哪一个更适合我的情况

好吧,那么。。代码:

class Proces(object):
[...]

def Obsluz(self):
    proces = LRU(self.sekwencja, int(self.przydzielone_ramki))
    proces.Symulacja("T")
    #.thread.join()
def Threads(self):
        thread = Thread(target = self.Obsluz)
        thread.start()
        thread.join()
运行该代码:

for lru in self.lru_procesy:
        lru.Watek()
我想要实现的是使用不同的参数(从Proces.attributes中获取)在同一时间运行Obsluz方法数次。这是一个随机数,它将有多少个进程对象。它可以是10/20/30 ect

我上面的代码没有像我希望的那样运行,因为每个线程都在一个接一个地结束(因为.join())。可以同时运行这些吗


谢谢大家!

您只是启动了一个工人,并立即等待它完成

要生成多个工作线程并等待它们全部完成,请使用以下方法:

  workers = []
  for wid in range(nworkers):
    w = Thread(target = dowork, args = ...)
    w.start()
    workers.append(w)
  # join all of the workers
  for w in workers: w.join()
  print "All done!"

请注意:您可能应该使用英语变量名,而不是使用您的母语,这样每个人都更容易阅读您的代码。