Python: 运行 一个在新线程中接受参数的 class 方法

Python: run a class method that takes an argument in a new thread

我正在尝试做与这个问题相同的事情:Run Class methods in threads (python),但是我想在一个单独的线程中调用的 class 方法需要一个额外的参数,除了 self。 A.Rodas 的解决方案不起作用:如果我尝试 Thread(target=self.class_method, args=(self, arg2)).start(),它说我有 3 个参数而不是 2 个,而如果尝试 args=(arg2),它将我的 arg2 字符串分解为构成元素并说出 334234 个参数!有任何想法吗?谢谢

很难从你问题的格式中判断出来,但我认为问题是你不应该在 args 元组中包含 self

threading.Thread(target=self.class_method, args=(arg2)).start()

你应该这样做:

threading.Thread(target=self.class_method, args=(arg2,)).start()