问题描述
我今天试图复制一个与行数或数据集大小有关的错误(不是很重要)-在尝试复制此错误时,我在数组中填充了很多对象,计划要用小对象填充大型数组,直到达到内存限制为止。
22369000 2425.549415588379
<--- Last few GCs --->
[1130801:0x3a01e80] 1137 ms: Scavenge 32.9 (43.8) -> 29.8 (62.8) MB,8.4 / 0.0 ms allocation failure
[1130801:0x3a01e80] 1199 ms: Mark-sweep 40.9 (71.8) -> 34.0 (71.0) MB,5.6 / 0.0 ms (+ 30.0 ms in 88 steps since start of marking,biggest step 3.8 ms,walltime since start of marking 334 ms) finalize incremental marking via stack guard GC in old spa[1130801:0x3a01e80] 7327 ms: Scavenge 1207.5 (1235.0) -> 1195.9 (1237.0) MB,25.4 / 0.0 ms allocation failure
<--- JS stacktrace --->
如果我输入大量数字,例如323690000,它将死于以下结果:
32369000 > 22369000
真正奇怪的是,如果我输入较小的数字(例如32369000),它将很高兴地生成所有这些信息-即使--max_old_space_size=8192
-值得注意的是,我还差一点没内存,当我使用_.times
运行程序时。看起来返回值有多大也没关系(我尝试定义20列)-如果传入的值很大,它总是在22369000标记附近消失,如果给它较小的值,它就会高兴地走得更远
这让我认为_.times
的工作方式存在一些怪异的错误(我应该换成Array.fill或类似的东西)。我查看了const someAction = createAsyncThunk(
'my/someAction',async () => {...}
)
const someAction2 = createAsyncThunk(
'my/someAction2',async () => {...}
)
const generatedThunk = createAsyncThunk(
'my/thunk',async (arg,thunkApi) => {
thunkApi.dispatch(someAction());
thunkApi.dispatch(someAction2());
}
)
的实现,它似乎并没有做任何特别无效的事情(它在开始时生成一个空数组,然后填充它)。我没想到会导致这种情况。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)