У мене фоновий процес працює на 100% ЦП на Mac OS X. Через це всі інші програми дуже повільні.
Я хотів би встановити цей процес на не більше 50%, щоб мої програми могли працювати краще. Як я можу це зробити?
У мене фоновий процес працює на 100% ЦП на Mac OS X. Через це всі інші програми дуже повільні.
Я хотів би встановити цей процес на не більше 50%, щоб мої програми могли працювати краще. Як я можу це зробити?
Відповіді:
У командному рядку ( Terminal.appабо будь-якому іншому ) використовуйте niceта renice, як і в інших Unixes.
Використовувати niceпри запуску процесу:
nice -n <priority> <command> <arguments to command>
Пріоритет за замовчуванням дорівнює нулю, позитивні значення "приємніші" (тобто нижчий пріоритет), а негативні - "менш приємні" (більший пріоритет). Схоже, Mac OS працює від +10 до -10.
Використовуйте reniceдля зміни пріоритету вже запущеного процесу (зі reniceсторінки man на 10.5):
renice priority [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]
renice -n increment [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]
Частина, яка вас тут цікавить, - це pidтрохи. Це ідентифікатор процесу для роботи, і ви можете знайти його, використовуючи ps -u <your username>і шукаючи ім'я процесу, але я вважаю top -oза краще в цьому випадку, тому що процес, який вас цікавить, буде поруч.
Примітка. Без привілеїв суперпользователя ви ніколи не можете збільшувати пріоритет процесу. Для звичайних користувачів niceі reniceце дороги в одну сторону. А невеликі зміни пріоритету можуть мати великий вплив на час роботи. Тому йдіть легко з цього питання, поки не зрозумієте цього.
Ви можете використовувати команду:
renice -n # PID
Де:
topдодаток терміналу (утиліти / terminal.app)Якщо це системний процес або інший користувацький процес, слід ввести:
sudo renice -n 10 PID
Він запитає ваш пароль (якщо ви судо). Щодо кількості, я б рекомендував 10 або 19 (навіть нижчий пріоритет).
Зауважте, що це змінить пріоритет, а не використання процесора. Якщо ви не працюєте з іншими процесами, для яких потрібен процесор, або у вас більше одного процесора на вашому Mac (Core 2 Quad Core), процес все ще може використовувати 100% процесора.
renice 20 $(pgrep ImageOptim)
Або використовуйте назву вашої програми замість ImageOptim
renice -20дає процесу найбільш високий пріоритет, наприклад, при складанні великої програми на зразок октави. renice 20надає процесу найнижчий пріоритет.
Є також ряд GUI утиліти, як вільний BeNicer і Process Wizard (мій попередній улюблений), і версія на $ 1,99 в морозильній камері , що мій новий фаворит. Усі вони працюють над запущеними програмами.
Якщо ваш процес - це утиліта для допоміжних програм чи додатків, а не системний процес, і ви не хочете робити цього niceчи reniceпід час кожного завантаження системи, ви можете дати йому знімок AppPolice . Це відкритий і безкоштовний код. Завантажити його можна тут .
Ще однією альтернативою буде дуже приємний інтерфейс GUI, який називається менеджером завдань командного рядка htop. Ви можете бачити всі процеси та налаштовувати їхні niceзначення за допомогою клавіш F7та F8ярликів.
(Зверніть увагу, що негативні niceзначення є більш пріоритетними та протилежними позитивним значенням)
Щоб встановити його:
brew install htopв терміналіhtopпереглядати і керувати процесами в Терміналі або sudo htopохопити всю систему.