1.6 KiB
1.6 KiB
node 开箱器内存泄漏修复
首先,把这个目录里的那个 opener.js 下下来,存到 node 开箱器的文件夹里。
opener.js 的效果是 筛选 2% cqd 39 以上的号,你可以在代码里修改精度、阈值、甚至是靶子,来适配你自己的需求。
然后在开箱器目录里新建一个 ps1 脚本(比如叫做 start.ps1
),粘贴以下内容:
[string]$filein = Read-Host "Input file name"
if ( Test-Path -Path $filein -PathType Leaf ) {
[string]$fileout = Read-Host "Output file name"
$msr = Get-Content $filein | Measure-Object -Line
[int]$lim = $msr.Lines + 25
[int]$cur = 1
while ( $cur -lt $lim ) {
./node.exe opener.js $filein $cur 20 $fileout
$cur += 20
}
Write-Host "Done! Exiting..."
$null = [System.Console]::Readkey()
} else {
Write-Host "No such file! Exiting..."
$null = [System.Console]::Readkey()
}
这个脚本的作用是每开 20 个号重启一次开箱器,开完为止。把总行数 +25 是为了留一定的容错,(其实没什么必要,但是有一点心理安慰的作用)。
每次开的号数也可以自己改。频繁的重启可以减少内存占用(实测 20 个 2% cqd 大约占用 150MB RAM,但变化显然不是线性的),由于开箱器每次重启都要从头重新读一遍输入文件,过小的 batch size 会影响重启速度,请自己权衡。
脚本保存完之后用 powershell 运行(一般是直接双击,不行的话自行搜索解决办法),然后按提示使用即可。可以多开。