RuntimeError: DataLoader worker (pid(s) 9528, 8320) exited unexpectedly问题解决记录

仅供学习记录,若有侵权可联系删除。
方法一: num_workers设置为0,默认值为0表示不启用多进程。该方法在处理大量数据的时候还是不行,肯定要多进程。参见方法二。
在这里插入图片描述

方法二:将涉及多线程的代码放到if name == 'main’的范围内
if name == ‘main’:
for epoch in range(3):
for step, (batch_x, batch_y) in enumerate(loader):
# 假设这里就是你训练的地方…
里面的loader就是上面定义的test_loader,(指定了多进程的)。另外只需要loader的执行部分放在main之内即可,定义部分可以在main内,也可以在main之外.
Python中多进程(multiprocessing这个模块包)的内容必须放在if name == 'main’之内才可以。多线程(threading这个模块包)是没有这项限定的。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值