我们有一个 Raspberry Pi(带有 Raspbian/Debian 8/Jessie),设置为在 kiosk 模式下运行 chromium,作为本地网络的状态监视器。它被设置为从我们网络上的服务器加载一页;该页面有一小部分 Javascript,每 30 秒重新加载一次页面。
它工作了大约 2 个小时,然后就崩溃了,“哎哟!”错误页面。
我一直在进行一些挖掘并弄清楚如何打开 chromium 的日志记录。这揭示了以下错误消息:
[246:254:0117/113914:ERROR:platform_thread_posix.cc(118)] pthread_create: Resource temporarily unavailable
一点谷歌搜索让我发现这一页这表明问题是系统没有足够的可用线程。我使用 abd 检查了系统的限制,ulimit -a
发现max user processes
等于 7336。
接下来,我设置了一个简单的脚本来记录使用的 chromium 进程的数量ps -elfT | grep chrom | wc -l
,发现 chromium 正在慢慢地产生更多线程,当线程数量达到 222 时崩溃(从大约 50 的低点上升)。
这并不能明确证明这是问题所在,但线程数量的稳步增加看起来确实是一个问题,这引发了我的问题:
如何防止 chromium 不断产生新线程?