
- Node.js 教程
- Node.js - 首頁
- Node.js - 簡介
- Node.js - 環境設定
- Node.js - 第一個應用程式
- Node.js - REPL 終端
- Node.js - 命令列選項
- Node.js - 包管理器 (NPM)
- Node.js - 回撥函式概念
- Node.js - 上傳檔案
- Node.js - 傳送電子郵件
- Node.js - 事件
- Node.js - 事件迴圈
- Node.js - 事件發射器
- Node.js - 偵錯程式
- Node.js - 全域性物件
- Node.js - 控制檯
- Node.js - 程序
- Node.js - 應用程式擴充套件
- Node.js - 打包
- Node.js - Express 框架
- Node.js - RESTFul API
- Node.js - 緩衝區
- Node.js - 流
- Node.js - 檔案系統
- Node.js MySQL
- Node.js - MySQL 入門
- Node.js - MySQL 建立資料庫
- Node.js - MySQL 建立表
- Node.js - MySQL 插入資料
- Node.js - MySQL 從表中選擇資料
- Node.js - MySQL WHERE 條件
- Node.js - MySQL ORDER BY 排序
- Node.js - MySQL 刪除資料
- Node.js - MySQL 更新資料
- Node.js - MySQL 聯接
- Node.js MongoDB
- Node.js - MongoDB 入門
- Node.js - MongoDB 建立資料庫
- Node.js - MongoDB 建立集合
- Node.js - MongoDB 插入資料
- Node.js - MongoDB 查詢資料
- Node.js - MongoDB 查詢
- Node.js - MongoDB 排序
- Node.js - MongoDB 刪除資料
- Node.js - MongoDB 更新資料
- Node.js - MongoDB 限制結果
- Node.js - MongoDB 聯接
- Node.js 模組
- Node.js - 模組
- Node.js - 內建模組
- Node.js - 實用程式模組
- Node.js - Web 模組
- Node.js 有用資源
- Node.js - 快速指南
- Node.js - 有用資源
- Node.js - 討論
Node.js - os.setPriority() 方法
Node.js 的 os.setPriority() 方法 允許設定由程序 ID (pid) 指定的程序的排程優先順序。
優先順序是一個整數,指定我們想要設定的程序排程優先順序。輸入優先順序必須介於 -20(高優先順序)到 19(低優先順序)之間。
由於 POSIX 系統的優先順序級別與 Windows 系統 的優先順序級別不同,Node.js 為我們提供了具有不同優先順序級別的常量,用於程序,它們位於 os.constants.priority 常量中。在 Windows 上將程序優先順序設定為 PRIORITY_HIGHEST 需要提升的許可權。如果執行程式的使用者沒有許可權,則它將降低到 PRIORITY_HIGH。
語法
以下是 Node.js os.setPriority() 方法 的語法 -
os.setPriority([pid, ] priority)
引數
pid - (可選)這是程序 ID,一個整數,標識應設定其優先順序的正在執行的程序。預設值為 0。這是一個可選引數。
priority - (必填)第二個引數是優先順序,一個整數,表示我們希望設定的程序排程優先順序。範圍從 -20(最高優先順序)到 19(最低優先順序)。這是一個必填引數。
返回值
此方法不返回任何內容,而是設定由 pid 指定的程序的排程優先順序。
以下是 Node.js 提供的優先順序常量 -
PRIORITY_LOW - 這是最低的程序排程優先順序。在 Windows 上,這對應於 IDLE PRIORITY CLASS,在所有其他平臺上,它的 nice 值為 19。
PRIORITY_BELOW_NORMAL - 在 Windows 上,這對應於 BELOW_NORMAL_PRIORITY_CLASS,在所有其他平臺上,它的 nice 值為 10。
PRIORITY_NORMAL - 這是預設的程序排程優先順序,它對應於 Windows 上的 NORMAL_PRIORITY_CLASS。在所有其他平臺上,0 是 nice 值。
PRIORITY_ABOVE_NORMAL - 這對應於 Windows 上的 ABOVE_NORMAL_PRIORITY_CLASS,在所有其他平臺上,它的 nice 值為 -7。
PRIORITY_HIGH - 在 Windows 上,這對應於 HIGH_PRIORITY_CLASS,在所有其他平臺上,它的 nice 值為 -14。
PRIORITY_HIGHEST - 這是最高的程序排程優先順序,它對應於 Windows 上的 REALTIME_PRIORITY_CLASS。在所有其他平臺上,-20 是 nice 值。
示例
在以下示例中,我們嘗試將當前程序的優先順序設定為 0。
const os = require('os'); os.setPriority(0); console.log(os.getPriority());
輸出
/home/cg/root/63a002c52763b/main.js:3 os.setPriority(0); ^ TypeError: os.setPriority is not a function at Object.<anonymous> (/home/cg/root/63a002c52763b/main.js:3:4) at Module._compile (internal/modules/cjs/loader.js:702:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10) at Module.load (internal/modules/cjs/loader.js:612:32) at tryModuleLoad (internal/modules/cjs/loader.js:551:12) at Function.Module._load (internal/modules/cjs/loader.js:543:3) at Function.Module.runMain (internal/modules/cjs/loader.js:744:10) at startup (internal/bootstrap/node.js:238:19) at bootstrapNodeJSCore (internal/bootstrap/node.js:572:3)
注意 - 要獲得準確的結果,最好在本地執行以上程式碼。
執行以上程式後,setPriority() 方法將當前程序的優先順序設定為 0。由於 setPriority() 不返回任何內容,因此我們記錄了 getPriority() 方法,它列印當前程序的優先順序。
0
示例
在下面的示例中,我們嘗試將當前程序的優先順序設定為 19。
const os = require('os'); os.setPriority(19); console.log(os.getPriority());
錯誤
home/cg/root/63a002c52763b/main.js:3 os.setPriority(19); ^ TypeError: os.setPriority is not a function at Object.<anonymous> (/home/cg/root/63a002c52763b/main.js:3:4) at Module._compile (internal/modules/cjs/loader.js:702:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10) at Module.load (internal/modules/cjs/loader.js:612:32) at tryModuleLoad (internal/modules/cjs/loader.js:551:12) at Function.Module._load (internal/modules/cjs/loader.js:543:3) at Function.Module.runMain (internal/modules/cjs/loader.js:744:10) at startup (internal/bootstrap/node.js:238:19) at bootstrapNodeJSCore (internal/bootstrap/node.js:572:3)
注意 - 要獲得準確的結果,最好在本地執行以上程式碼。
執行以上程式後,19 設定為 pid 的排程優先順序。然後 . getPriority() 方法 列印當前程序的排程優先順序。
19
示例
注意 - 如果執行程式的使用者沒有許可權,則它將降低到 PRIORITY_HIGH。
在以下示例中,我們使用 setPriority() 方法 將當前程序的優先順序設定為 -20。
const os = require('os'); os.setPriority(-20); console.log(os.getPriority());
錯誤
/home/cg/root/63a002c52763b/main.js:3 os.setPriority(-20); ^ TypeError: os.setPriority is not a function at Object.<anonymous> (/home/cg/root/63a002c52763b/main.js:3:4) at Module._compile (internal/modules/cjs/loader.js:702:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10) at Module.load (internal/modules/cjs/loader.js:612:32) at tryModuleLoad (internal/modules/cjs/loader.js:551:12) at Function.Module._load (internal/modules/cjs/loader.js:543:3) at Function.Module.runMain (internal/modules/cjs/loader.js:744:10) at startup (internal/bootstrap/node.js:238:19) at bootstrapNodeJSCore (internal/bootstrap/node.js:572:3)
注意 - 要獲得準確的結果,最好在本地執行以上程式碼。
執行以上程式後,執行以上程式的使用者沒有許可權,它會緩慢降低到 PRIORITY_HIGH (-14)。
-14