You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python使用ThreadPoolExecutor.submit时出现缺少必填位置参数错误如何解决

问题根因
  • 调用ThreadPoolExecutor.submit()时,错误将目标函数的入参整体包裹为一个元组传入,submit会将你传入的每个后续参数直接透传给目标函数,你包裹元组后相当于只给returnSomething传递了1个位置参数(该元组本身),因此触发参数缺失报错。
  • 额外传入的TestClass类对象属于冗余参数,无任何作用。
修复方案

仅需修改异步调用的submit传参逻辑,移除参数外层的元组包裹、删除冗余的TestClass即可,修改后代码如下:

testClass = TestClass()
# 参数按顺序直接传给submit,不需要包裹元组
async_result=GlobalValues.getThreadPoolExecutor().submit(testClass.returnSomething, "a", "b")
val = async_result.result()
原理说明

你传入的testClass.returnSomething是已经绑定了实例的方法,self会自动传入,无需手动传递,submit方法接收可调用对象后,后续的所有位置参数都会按顺序透传给该方法,直接依次传入param1、param2对应的值即可。

内容的提问来源于stack exchange,提问作者cyber101

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 12:15:08