问题标签 [nice]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - 更改进程的 nice 值在 Linux 中无效
我阅读了关于APUE 3rd 8.16 Process Scheduling 的信息,有一个示例用于验证更改进程的 nice 值会影响其优先级,我重写了如下代码:
示例结果如下所示:
NZERO = 20
parent nice:20
child nice:20,adjusted by 0
child now nice:20
parent count:601089419
child count:603271014
看起来对子进程没有任何影响,为什么?以及如何使结果符合我的预期?
(我的平台是:Linux liucong-dell 4.4.0-93-generic #116~14.04.1-Ubuntu SMP Mon Aug 14 16:07:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux)
linux - Bash:如何在另一个函数中使用一个函数(它是一个字符串参数)
我的 .bashrc 中有这些功能:
在测试 nn 函数之前,我创建了一个 tar:
现在我想做的是:
但只有这个有效:
这里 nohup.out 中的错误:
bash - 如何在 bash 命令行上使用 for 循环?
请帮忙。我无法弄清楚命令行上 for 循环的语法。
这是我最好的猜测:
但显然,这是不正确的。
android - 更改 Android 进程的不错的值
我知道可以使用具有“renice”功能的终端来更改任何应用程序的好值。我的 renice 代码:renice -n <increment> <pid>
然而,新的 nice 值似乎只适用于前台应用程序。一旦我通过按主页按钮离开应用程序,如果我回到那个应用程序,那么不错的价值就会恢复。是否有一个原因?因此,我总是在当前前台应用程序上强制使用 renice 功能。如果是这种情况,是否可以更改后台应用程序的 nice 值?
PS 对于某些应用程序,操作系统似乎会不断地自行更改 nice 值,例如,前台应用程序的 nice 值通常为 -10。但是对于某些应用程序,即使它仍然是当前前台应用程序,该值也可能在运行时发生变化。不知道为什么会这样?
c - 测量 n 个进程的时间
因此,我可以根据 n 个进程的好值来衡量它们的时间。我从父进程派生出 n 个进程,它们所要做的就是在无限循环中从 0 到 X 计数一个计数器,每次打印从 0 到 X 一次计数所需的时间。
我想这是系统编程实验室的标准练习。
我正在将此实验的输出保存到 csv 文件中,以计算出进程的平均时间之类的东西,但是.. 我的输出中断了。
我的代码:
在输出中我得到奇怪的东西,比如
第 6 行中的 10 是错误的,因为我只有三个进程。我猜 1 是从第一个进程的输出中留下的,而 0 是第 0 个进程的输出。
关于这个原因,我有两个想法。1.程序被sigint终止。这会导致输出突然中断。2. 流程之间的变化导致该削减。
无论如何,我只想让我的输出变得干净整洁,以便使用它。
任何帮助,将不胜感激。:)
编辑:
仅用于复制:
生成文件:
和运行命令
python - 测试niceness是否被正确应用
我正在尝试将某些流程优先于其他流程。这是我正在使用的主要脚本,它模拟了一个 CPU 密集型进程:
simple_app.py
我的下一步是生成大量(具体而言,在本例中为 9 个)运行此代码的进程:
simple_runner.sh
然后我监视每个进程,报告子 CPU 利用率,这里:
process_reporting_server.py
我想看看被赋予较低 niceness 值的进程是否实际上被优先考虑。所以这就是我所做的:
运行simple_app_runner.sh
:
然后,这是报告:
稍微清理一下并使用 pandas 进行分析,我们看到在五分钟的时间间隔内,指定的好坏似乎并不重要:
我在这里完全错过了什么吗?为什么我指定的 niceness 似乎不会影响 CPU 资源的优先级?
linux-kernel - 系统调用 nice() 不能与否定参数一起使用
我尝试将我的进程设置为负值,例如:-20 使用 syscallnice(int inc)
或setpriority(int which, id_t who, int prio)
我使用 ps 命令检查,即使 syscall 不返回错误,它也不起作用。只接受正值。负值,nice值设置为默认0。你能帮我解释一下吗?谢谢
docker - 可以很好地运行 docker 容器吗?
我有一个托管 Web 服务器的 docker 映像和另一个运行后台任务的映像。大多数时候web服务器是空闲的,应该允许后台任务使用100%的CPU,但是任何时候web服务器需要资源,它都应该优先使用CPU,这样它才能快速响应。
如果一切都在一台 linux 机器上运行,我可以使用类似的东西nice -n19 background-task
来运行任务,它们将允许 web 服务器尽可能多的 CPU。
nice
有没有办法在一个级别上运行整个容器?我知道我可以使用 cpu_quota 限制每个后台任务可用的 CPU 时间量,但这并不能解决问题。如果 Web 服务器想要使用所有 4 个 CPU 内核来为客户端提供服务,则应该允许它。如果 Web 服务器不忙,所有 4 个 CPU 内核都应该在后台任务上工作。
如果我将 Dockerfile 中的命令更改为:
这会在容器之间工作吗?容器内的进程都是在同一个内核上运行的所有普通进程,所以看起来会,但我不确定。
这似乎是一件相当明显的事情。我错过了什么吗?
jquery - 无法选中好选择多个下拉列表的复选框?
我正在使用不错的选择下拉菜单,其中有多个选项可以选中或取消选中。
这里的问题是我可以选中或取消选中所有选项,并且需要在页面加载时检查特定复选框。
我尝试了很多,还添加了这些行。
执行此操作时在控制台中显示“已检查:true”,但更改不会反映在页面上。
为了取消选中我正在使用下面的代码的所有复选框。
如何使用其值设置选中或未选中的复选框?
android - 如何更改android服务的优先级(好值)?
我正在将 Android P 移植到设备中,因为我看到 systemui(com.android.systemui) 中存在一些滞后,尤其是在音量栏操作中。
所以我使用 renice 命令提高了 systemui 的优先级,之后效果更好。所以现在我想在流程开始时添加优先级。
请帮助我在启动时更改 systemui 的优先级。