我对线程非常新,就像现在一小时一样,但我的代码需要它。我学到了很多东西,可以在我的情况下有效地使用线程,但是我很难理解如何从我的函数中获得返回输出。
这是我的线程调用
threading.Thread(target = self.PageCollectionProcess(option) ).start()
当我尝试返回时,我得到输出
TypeError: 'list' object is not callable
File "/usr/lib/python2.7/threading.py", line 524, in __bootstrap
self.__bootstrap_inner()
File "/usr/lib/python2.7/threading.py", line 551, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 504, in run
self.__target(*self.__args, **self.__kwargs)
答案 0 :(得分:1)
您似乎以错误的方式致电Thread
:
threading.Thread(target = self.PageCollectionProcess(option) ).start()
应该是:
threading.Thread(target=self.PageCollectionProcess, args=(option,)).start()
以这种方式思考 - 在一个非常粗略的概括中,线程有点懒惰;你告诉一个线程要执行什么(一个函数和它的参数),然后线程运行它。