尝试运行此代码时
for i in range(N): jobs.append(mp.Process(None,G_Sim,(lmbda,mu,c,skip_cost,simulation_time,Policy,warmup_period,False,))) for j in jobs: j.start() j.join()
我得到一个断言错误:名称必须是一个字符串
尝试运行此代码时
for i in range(N): jobs.append(mp.Process(None,G_Sim,(lmbda,mu,c,skip_cost,simulation_time,Policy,warmup_period,False,))) for j in jobs: j.start() j.join()
我得到一个断言错误:名称必须是一个字符串
Process
期望它的第三个参数是进程名称,而不是参数元组。
mp.Process()
函数调用定义如下:
multiprocessing.Process([group[, target[, name[, args[, kwargs]]]]])
第三个参数应该是进程的名称,作为字符串。您正在传递以下元组: (lmbda,mu,c,skip_cost,simulation_time,Policy,warmup_period,False,)
你应该命名你的论点。就像是:
jobs.append(mp.Process(group=None, target=G_Sim, args=(lmbda,mu,c,skip_cost,simulation_time,Policy,warmup_period,False,)))