OS#

安定性: 2 - Stable

ソースコード: lib/os.js

node:os モジュールは、オペレーティングシステム関連のユーティリティメソッドとプロパティを提供します。以下のようにしてアクセスできます。

import os from 'node:os';const os = require('node:os');

os.EOL#

オペレーティングシステム固有の行末マーカーです。

  • POSIX では \n
  • Windows では \r\n

os.availableParallelism()#

プログラムが使用すべきデフォルトの並列処理量の推定値を返します。常に 0 より大きい値を返します。

この関数は、libuv の uv_available_parallelism() の小さなラッパーです。

os.arch()#

Node.js バイナリがコンパイルされたオペレーティングシステムの CPU アーキテクチャを返します。取りうる値は 'arm', 'arm64', 'ia32', 'loong64', 'mips', 'mipsel', 'ppc64', 'riscv64', 's390x', および 'x64' です。

戻り値は process.arch と同じです。

os.constants#

エラーコード、プロセスシグナルなど、一般的に使用されるオペレーティングシステム固有の定数を含みます。定義されている具体的な定数は OS 定数で説明されています。

os.cpus()#

各論理 CPU コアに関する情報を含むオブジェクトの配列を返します。/proc ファイルシステムが利用できないなど、CPU 情報が利用できない場合は、配列は空になります。

各オブジェクトに含まれるプロパティは以下の通りです。

  • model <string>
  • speed <number> (MHz 単位)
  • times <Object>
    • user <number> CPU がユーザーモードで費やしたミリ秒数。
    • nice <number> CPU が nice モードで費やしたミリ秒数。
    • sys <number> CPU が sys モードで費やしたミリ秒数。
    • idle <number> CPU がアイドルモードで費やしたミリ秒数。
    • irq <number> CPU が irq モードで費やしたミリ秒数。
[
  {
    model: 'Intel(R) Core(TM) i7 CPU         860  @ 2.80GHz',
    speed: 2926,
    times: {
      user: 252020,
      nice: 0,
      sys: 30340,
      idle: 1070356870,
      irq: 0,
    },
  },
  {
    model: 'Intel(R) Core(TM) i7 CPU         860  @ 2.80GHz',
    speed: 2926,
    times: {
      user: 306960,
      nice: 0,
      sys: 26980,
      idle: 1071569080,
      irq: 0,
    },
  },
  {
    model: 'Intel(R) Core(TM) i7 CPU         860  @ 2.80GHz',
    speed: 2926,
    times: {
      user: 248450,
      nice: 0,
      sys: 21750,
      idle: 1070919370,
      irq: 0,
    },
  },
  {
    model: 'Intel(R) Core(TM) i7 CPU         860  @ 2.80GHz',
    speed: 2926,
    times: {
      user: 256880,
      nice: 0,
      sys: 19430,
      idle: 1070905480,
      irq: 20,
    },
  },
] 

nice の値は POSIX のみです。Windows では、すべてのプロセッサの nice の値は常に 0 です。

アプリケーションで利用可能な並列処理量を計算するために os.cpus().length を使用すべきではありません。この目的のためには os.availableParallelism() を使用してください。

os.devNull#

プラットフォーム固有のヌルデバイスのファイルパスです。

  • Windows では \\.\nul
  • POSIX では /dev/null

os.endianness()#

Node.js バイナリがコンパイルされた CPU のエンディアンを識別する文字列を返します。

取りうる値は、ビッグエンディアンの場合は 'BE'、リトルエンディアンの場合は 'LE' です。

os.freemem()#

空きシステムメモリの量をバイト単位の整数で返します。

os.getPriority([pid])#

  • pid <integer> スケジューリング優先度を取得するプロセス ID。デフォルト: 0
  • 戻り値: <integer>

pid で指定されたプロセスのスケジューリング優先度を返します。pid が指定されないか 0 の場合、現在のプロセスの優先度が返されます。

os.homedir()#

現在のユーザーのホームディレクトリの文字列パスを返します。

POSIX では、$HOME 環境変数が定義されていればそれを使用します。それ以外の場合は、実効 UID を使用してユーザーのホームディレクトリを検索します。

Windows では、USERPROFILE 環境変数が定義されていればそれを使用します。それ以外の場合は、現在のユーザーのプロファイルディレクトリへのパスを使用します。

os.hostname()#

オペレーティングシステムのホスト名を文字列として返します。

os.loadavg()#

1分、5分、15分のロードアベレージを含む配列を返します。

ロードアベレージは、オペレーティングシステムによって計算されるシステムアクティビティの指標であり、小数で表されます。

ロードアベレージは Unix 固有の概念です。Windows では、戻り値は常に [0, 0, 0] です。

os.machine()#

マシンタイプを文字列として返します。例えば、armarm64aarch64mipsmips64ppc64ppc64les390xi386i686x86_64 などです。

POSIX システムでは、マシンタイプは uname(3) を呼び出して決定されます。Windows では、RtlGetVersion() が使用され、利用できない場合は GetVersionExW() が使用されます。詳細については https://en.wikipedia.org/wiki/Uname#Examples を参照してください。

os.networkInterfaces()#

ネットワークアドレスが割り当てられているネットワークインターフェースを含むオブジェクトを返します。

返されたオブジェクトの各キーは、ネットワークインターフェースを識別します。関連付けられた値は、それぞれ割り当てられたネットワークアドレスを記述するオブジェクトの配列です。

割り当てられたネットワークアドレスオブジェクトで利用可能なプロパティは以下の通りです。

  • address <string> 割り当てられた IPv4 または IPv6 アドレス
  • netmask <string> IPv4 または IPv6 ネットワークマスク
  • family <string> IPv4 または IPv6
  • mac <string> ネットワークインターフェースの MAC アドレス
  • internal <boolean> ネットワークインターフェースがループバックまたはリモートからアクセスできない同様のインターフェースである場合は true、そうでなければ false
  • scopeid <number> 数値の IPv6 スコープ ID (familyIPv6 の場合のみ指定されます)
  • cidr <string> CIDR 表記でルーティングプレフィックスを持つ、割り当てられた IPv4 または IPv6 アドレス。netmask が無効な場合、このプロパティは null に設定されます。
{
  lo: [
    {
      address: '127.0.0.1',
      netmask: '255.0.0.0',
      family: 'IPv4',
      mac: '00:00:00:00:00:00',
      internal: true,
      cidr: '127.0.0.1/8'
    },
    {
      address: '::1',
      netmask: 'ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff',
      family: 'IPv6',
      mac: '00:00:00:00:00:00',
      scopeid: 0,
      internal: true,
      cidr: '::1/128'
    }
  ],
  eth0: [
    {
      address: '192.168.1.108',
      netmask: '255.255.255.0',
      family: 'IPv4',
      mac: '01:02:03:0a:0b:0c',
      internal: false,
      cidr: '192.168.1.108/24'
    },
    {
      address: 'fe80::a00:27ff:fe4e:66a1',
      netmask: 'ffff:ffff:ffff:ffff::',
      family: 'IPv6',
      mac: '01:02:03:0a:0b:0c',
      scopeid: 1,
      internal: false,
      cidr: 'fe80::a00:27ff:fe4e:66a1/64'
    }
  ]
} 

os.platform()#

Node.js バイナリがコンパイルされたオペレーティングシステムのプラットフォームを識別する文字列を返します。値はコンパイル時に設定されます。取りうる値は 'aix', 'darwin', 'freebsd','linux', 'openbsd', 'sunos', および 'win32' です。

戻り値は process.platform と同じです。

Node.js が Android オペレーティングシステム上でビルドされた場合、値 'android' が返されることもあります。Android サポートは実験的です

os.release()#

オペレーティングシステムを文字列として返します。

POSIX システムでは、オペレーティングシステムのリリ​​ースは uname(3) を呼び出して決定されます。Windows では、GetVersionExW() が使用されます。詳細については https://en.wikipedia.org/wiki/Uname#Examples を参照してください。

os.setPriority([pid, ]priority)#

  • pid <integer> スケジューリング優先度を設定するプロセス ID。デフォルト: 0
  • priority <integer> プロセスに割り当てるスケジューリング優先度。

pid で指定されたプロセスのスケジューリング優先度を設定しようとします。pid が指定されないか 0 の場合、現在のプロセスのプロセス ID が使用されます。

priority の入力は -20 (高優先度) から 19 (低優先度) の間の整数でなければなりません。Unix の優先度レベルと Windows の優先度クラスの違いにより、priorityos.constants.priority 内の 6 つの優先度定数のいずれかにマッピングされます。プロセスの優先度レベルを取得する際、この範囲マッピングにより Windows での戻り値が若干異なる場合があります。混乱を避けるために、priority を優先度定数のいずれかに設定してください。

Windows では、優先度を PRIORITY_HIGHEST に設定するには管理者権限が必要です。そうでない場合、設定された優先度は警告なしに PRIORITY_HIGH に引き下げられます。

os.tmpdir()#

オペレーティングシステムのデフォルトの一時ファイル用ディレクトリを文字列として返します。

Windows では、結果は TEMP および TMP 環境変数によって上書きされる可能性があり、TEMPTMP よりも優先されます。どちらも設定されていない場合、デフォルトは %SystemRoot%\temp または %windir%\temp になります。

Windows 以外のプラットフォームでは、TMPDIR, TMP, TEMP 環境変数が、このメソッドの結果を上書きするために、記載された順序でチェックされます。いずれも設定されていない場合、デフォルトは /tmp になります。

一部のオペレーティングシステムのディストリビューションでは、システム管理者による追加設定なしで、デフォルトで TMPDIR (Windows 以外) または TEMPTMP (Windows) を設定しています。os.tmpdir() の結果は、ユーザーによって明示的に上書きされない限り、通常はシステムの設定を反映します。

os.totalmem()#

システムメモリの総量をバイト単位の整数で返します。

os.type()#

uname(3) によって返されるオペレーティングシステム名を返します。例えば、Linux では 'Linux'、macOS では 'Darwin'、Windows では 'Windows_NT' を返します。

さまざまなオペレーティングシステムで uname(3) を実行した際の出力に関する追加情報については、https://en.wikipedia.org/wiki/Uname#Examples を参照してください。

os.uptime()#

システムの稼働時間を秒数で返します。

os.userInfo([options])#

  • options <Object>
    • encoding <string> 結果の文字列を解釈するために使用される文字エンコーディング。encoding'buffer' に設定されている場合、usernameshell、および homedir の値は Buffer インスタンスになります。デフォルト: 'utf8'
  • 戻り値: <Object>

現在有効なユーザーに関する情報を返します。POSIX プラットフォームでは、これは通常、パスワードファイルの一部です。返されるオブジェクトには usernameuidgidshell、および homedir が含まれます。Windows では、uidgid フィールドは -1 であり、shellnull です。

os.userInfo() によって返される homedir の値は、オペレーティングシステムによって提供されます。これは os.homedir() の結果とは異なり、こちらはオペレーティングシステムの応答にフォールバックする前に、ホームディレクトリの環境変数を問い合わせます。

ユーザーに username または homedir がない場合、SystemError をスローします。

os.version()#

カーネルバージョンを識別する文字列を返します。

POSIX システムでは、オペレーティングシステムのリリ​​ースは uname(3) を呼び出して決定されます。Windows では、RtlGetVersion() が使用され、利用できない場合は GetVersionExW() が使用されます。詳細については https://en.wikipedia.org/wiki/Uname#Examples を参照してください。

OS 定数#

以下の定数は os.constants によってエクスポートされます。

すべての定数がすべてのオペレーティングシステムで利用可能というわけではありません。

シグナル定数#

以下のシグナル定数は os.constants.signals によってエクスポートされます。

定数 説明
SIGHUP 制御端末が閉じられたり、親プロセスが終了したりしたときに送信されます。
SIGINT ユーザーがプロセスを中断したいとき (Ctrl+C) に送信されます。
SIGQUIT ユーザーがプロセスを終了してコアダンプを実行したいときに送信されます。
SIGILL プロセスが不正、不正形式、不明、または特権付きの命令を実行しようとしたことを通知するために送信されます。
SIGTRAP 例外が発生したときにプロセスに送信されます。
SIGABRT プロセスに中断を要求するために送信されます。
SIGIOT SIGABRT の同義語です。
SIGBUS プロセスがバスエラーを引き起こしたことを通知するために送信されます。
SIGFPE プロセスが不正な算術演算を実行したことを通知するために送信されます。
SIGKILL プロセスを即座に終了させるために送信されます。
SIGUSR1 SIGUSR2 ユーザー定義の条件を識別するためにプロセスに送信されます。
SIGSEGV セグメンテーション違反を通知するためにプロセスに送信されます。
SIGPIPE 切断されたパイプに書き込もうとしたときにプロセスに送信されます。
SIGALRM システムタイマーが経過したときにプロセスに送信されます。
SIGTERM 終了を要求するためにプロセスに送信されます。
SIGCHLD 子プロセスが終了したときにプロセスに送信されます。
SIGSTKFLT コプロセッサでのスタックフォルトを示すためにプロセスに送信されます。
SIGCONT 一時停止中のプロセスを続行するようオペレーティングシステムに指示するために送信されます。
SIGSTOP プロセスを停止するようオペレーティングシステムに指示するために送信されます。
SIGTSTP 停止を要求するためにプロセスに送信されます。
SIGBREAK ユーザーがプロセスを中断したいときに送信されます。
SIGTTIN バックグラウンドで TTY から読み取りを行ったときにプロセスに送信されます。
SIGTTOU バックグラウンドで TTY に書き込みを行ったときにプロセスに送信されます。
SIGURG ソケットに緊急に読み取るべきデータがあるときにプロセスに送信されます。
SIGXCPU CPU 使用量の制限を超えたときにプロセスに送信されます。
SIGXFSZ 許可されている最大サイズよりも大きなファイルを成長させたときにプロセスに送信されます。
SIGVTALRM 仮想タイマーが経過したときにプロセスに送信されます。
SIGPROF システムタイマーが経過したときにプロセスに送信されます。
SIGWINCH 制御端末のサイズが変更されたときにプロセスに送信されます。
SIGIO I/O が利用可能になったときにプロセスに送信されます。
SIGPOLL SIGIO の同義語です。
SIGLOST ファイルロックが失われたときにプロセスに送信されます。
SIGPWR 電源障害を通知するためにプロセスに送信されます。
SIGINFO SIGPWR の同義語です。
SIGSYS 不正な引数を通知するためにプロセスに送信されます。
SIGUNUSED SIGSYS の同義語です。

エラー定数#

以下のエラー定数は os.constants.errno によってエクスポートされます。

POSIX エラー定数#
定数 説明
E2BIG 引数リストが想定よりも長いことを示します。
EACCES 操作に十分な権限がなかったことを示します。
EADDRINUSE ネットワークアドレスがすでに使用中であることを示します。
EADDRNOTAVAIL ネットワークアドレスが現在使用できないことを示します。
EAFNOSUPPORT ネットワークアドレスファミリーがサポートされていないことを示します。
EAGAIN 利用可能なデータがなく、後でもう一度操作を試みる必要があることを示します。
EALREADY ソケットがすでに保留中の接続を進行中であることを示します。
EBADF ファイルディスクリプタが有効でないことを示します。
EBADMSG 無効なデータメッセージを示します。
EBUSY デバイスまたはリソースがビジー状態であることを示します。
ECANCELED 操作がキャンセルされたことを示します。
ECHILD 子プロセスがないことを示します。
ECONNABORTED ネットワーク接続が中断されたことを示します。
ECONNREFUSED ネットワーク接続が拒否されたことを示します。
ECONNRESET ネットワーク接続がリセットされたことを示します。
EDEADLK リソースデッドロックが回避されたことを示します。
EDESTADDRREQ 宛先アドレスが必要であることを示します。
EDOM 引数が関数のドメイン外であることを示します。
EDQUOT ディスククォータを超過したことを示します。
EEXIST ファイルがすでに存在することを示します。
EFAULT 無効なポインタアドレスを示します。
EFBIG ファイルが大きすぎることを示します。
EHOSTUNREACH ホストに到達できないことを示します。
EIDRM 識別子が削除されたことを示します。
EILSEQ 不正なバイトシーケンスを示します。
EINPROGRESS 操作がすでに進行中であることを示します。
EINTR 関数呼び出しが中断されたことを示します。
EINVAL 無効な引数が提供されたことを示します。
EIO 他に特定されていない I/O エラーを示します。
EISCONN ソケットが接続されていることを示します。
EISDIR パスがディレクトリであることを示します。
ELOOP パス内のシンボリックリンクのレベルが多すぎることを示します。
EMFILE 開いているファイルが多すぎることを示します。
EMLINK ファイルへのハードリンクが多すぎることを示します。
EMSGSIZE 提供されたメッセージが長すぎることを示します。
EMULTIHOP マルチホップが試みられたことを示します。
ENAMETOOLONG ファイル名が長すぎることを示します。
ENETDOWN ネットワークがダウンしていることを示します。
ENETRESET ネットワークによって接続が中断されたことを示します。
ENETUNREACH ネットワークに到達できないことを示します。
ENFILE システム内の開いているファイルが多すぎることを示します。
ENOBUFS 利用可能なバッファスペースがないことを示します。
ENODATA ストリームヘッドの読み取りキューにメッセージがないことを示します。
ENODEV そのようなデバイスがないことを示します。
ENOENT そのようなファイルまたはディレクトリがないことを示します。
ENOEXEC 実行形式エラーを示します。
ENOLCK 利用可能なロックがないことを示します。
ENOLINK リンクが切断されたことを示します。
ENOMEM 十分なスペースがないことを示します。
ENOMSG 目的のタイプのメッセージがないことを示します。
ENOPROTOOPT 指定されたプロトコルが利用できないことを示します。
ENOSPC デバイスに利用可能なスペースがないことを示します。
ENOSR 利用可能なストリームリソースがないことを示します。
ENOSTR 指定されたリソースがストリームではないことを示します。
ENOSYS 関数が実装されていないことを示します。
ENOTCONN ソケットが接続されていないことを示します。
ENOTDIR パスがディレクトリではないことを示します。
ENOTEMPTY ディレクトリが空ではないことを示します。
ENOTSOCK 指定されたアイテムがソケットではないことを示します。
ENOTSUP 指定された操作がサポートされていないことを示します。
ENOTTY 不適切な I/O 制御操作を示します。
ENXIO そのようなデバイスまたはアドレスがないことを示します。
EOPNOTSUPP ソケットで操作がサポートされていないことを示します。(Linux では ENOTSUPEOPNOTSUPP は同じ値ですが、POSIX.1 によるとこれらのエラー値は区別されるべきです。)
EOVERFLOW 値が大きすぎて特定のデータ型に格納できないことを示します。
EPERM 操作が許可されていないことを示します。
EPIPE パイプが壊れていることを示します。
EPROTO プロトコルエラーを示します。
EPROTONOSUPPORT プロトコルがサポートされていないことを示します。
EPROTOTYPE ソケットに対して間違ったタイプのプロトコルであることを示します。
ERANGE 結果が大きすぎることを示します。
EROFS ファイルシステムが読み取り専用であることを示します。
ESPIPE 無効なシーク操作を示します。
ESRCH そのようなプロセスがないことを示します。
ESTALE ファイルハンドルが古いことを示します。
ETIME タイマーが期限切れになったことを示します。
ETIMEDOUT 接続がタイムアウトしたことを示します。
ETXTBSY テキストファイルがビジー状態であることを示します。
EWOULDBLOCK 操作がブロックされることを示します。
EXDEV 不適切なリンクを示します。
Windows 固有のエラー定数#

以下のエラーコードは Windows オペレーティングシステムに固有のものです。

定数 説明
WSAEINTR 中断された関数呼び出しを示します。
WSAEBADF 無効なファイルハンドルを示します。
WSAEACCES 操作を完了するための権限が不十分であることを示します。
WSAEFAULT 無効なポインタアドレスを示します。
WSAEINVAL 無効な引数が渡されたことを示します。
WSAEMFILE 開いているファイルが多すぎることを示します。
WSAEWOULDBLOCK リソースが一時的に利用できないことを示します。
WSAEINPROGRESS 操作が現在進行中であることを示します。
WSAEALREADY 操作がすでに進行中であることを示します。
WSAENOTSOCK リソースがソケットではないことを示します。
WSAEDESTADDRREQ 宛先アドレスが必要であることを示します。
WSAEMSGSIZE メッセージサイズが長すぎることを示します。
WSAEPROTOTYPE ソケットに対して間違ったプロトコルタイプであることを示します。
WSAENOPROTOOPT 不正なプロトコルオプションを示します。
WSAEPROTONOSUPPORT プロトコルがサポートされていないことを示します。
WSAESOCKTNOSUPPORT ソケットタイプがサポートされていないことを示します。
WSAEOPNOTSUPP 操作がサポートされていないことを示します。
WSAEPFNOSUPPORT プロトコルファミリーがサポートされていないことを示します。
WSAEAFNOSUPPORT アドレスファミリーがサポートされていないことを示します。
WSAEADDRINUSE ネットワークアドレスがすでに使用中であることを示します。
WSAEADDRNOTAVAIL ネットワークアドレスが利用できないことを示します。
WSAENETDOWN ネットワークがダウンしていることを示します。
WSAENETUNREACH ネットワークに到達できないことを示します。
WSAENETRESET ネットワーク接続がリセットされたことを示します。
WSAECONNABORTED 接続が中断されたことを示します。
WSAECONNRESET ピアによって接続がリセットされたことを示します。
WSAENOBUFS 利用可能なバッファスペースがないことを示します。
WSAEISCONN ソケットがすでに接続されていることを示します。
WSAENOTCONN ソケットが接続されていないことを示します。
WSAESHUTDOWN ソケットがシャットダウンされた後、データを送信できないことを示します。
WSAETOOMANYREFS 参照が多すぎることを示します。
WSAETIMEDOUT 接続がタイムアウトしたことを示します。
WSAECONNREFUSED 接続が拒否されたことを示します。
WSAELOOP 名前を変換できないことを示します。
WSAENAMETOOLONG 名前が長すぎたことを示します。
WSAEHOSTDOWN ネットワークホストがダウンしていることを示します。
WSAEHOSTUNREACH ネットワークホストへのルートがないことを示します。
WSAENOTEMPTY ディレクトリが空ではないことを示します。
WSAEPROCLIM プロセスが多すぎることを示します。
WSAEUSERS ユーザーのクォータを超過したことを示します。
WSAEDQUOT ディスククォータを超過したことを示します。
WSAESTALE 古いファイルハンドルの参照を示します。
WSAEREMOTE アイテムがリモートであることを示します。
WSASYSNOTREADY ネットワークサブシステムの準備ができていないことを示します。
WSAVERNOTSUPPORTED winsock.dll のバージョンが範囲外であることを示します。
WSANOTINITIALISED 成功した WSAStartup がまだ実行されていないことを示します。
WSAEDISCON 正常なシャットダウンが進行中であることを示します。
WSAENOMORE これ以上結果がないことを示します。
WSAECANCELLED 操作がキャンセルされたことを示します。
WSAEINVALIDPROCTABLE プロシージャコールテーブルが無効であることを示します。
WSAEINVALIDPROVIDER 無効なサービスプロバイダを示します。
WSAEPROVIDERFAILEDINIT サービスプロバイダの初期化に失敗したことを示します。
WSASYSCALLFAILURE システムコールエラーを示します。
WSASERVICE_NOT_FOUND サービスが見つからなかったことを示します。
WSATYPE_NOT_FOUND クラスタイプが見つからなかったことを示します。
WSA_E_NO_MORE これ以上結果がないことを示します。
WSA_E_CANCELLED 呼び出しがキャンセルされたことを示します。
WSAEREFUSED データベースクエリが拒否されたことを示します。

dlopen 定数#

オペレーティングシステムで利用可能な場合、以下の定数が os.constants.dlopen でエクスポートされます。詳細については dlopen(3) を参照してください。

定数 説明
RTLD_LAZY 遅延バインディングを実行します。Node.js はデフォルトでこのフラグを設定します。
RTLD_NOW dlopen(3) が返る前に、ライブラリ内のすべての未定義シンボルを解決します。
RTLD_GLOBAL ライブラリによって定義されたシンボルは、後続でロードされるライブラリのシンボル解決に利用可能になります。
RTLD_LOCAL RTLD_GLOBAL の逆です。どちらのフラグも指定されない場合のデフォルトの動作です。
RTLD_DEEPBIND 自己完結型のライブラリが、以前にロードされたライブラリのシンボルよりも自身のシンボルを優先して使用するようにします。

優先度定数#

以下のプロセススケジューリング定数は os.constants.priority によってエクスポートされます。

定数 説明
PRIORITY_LOW 最も低いプロセススケジューリング優先度です。これは Windows の IDLE_PRIORITY_CLASS に相当し、他のすべてのプラットフォームでは nice 値 19 に相当します。
PRIORITY_BELOW_NORMAL PRIORITY_LOW より上で PRIORITY_NORMAL より下のプロセススケジューリング優先度です。これは Windows の BELOW_NORMAL_PRIORITY_CLASS に相当し、他のすべてのプラットフォームでは nice 値 10 に相当します。
PRIORITY_NORMAL デフォルトのプロセススケジューリング優先度です。これは Windows の NORMAL_PRIORITY_CLASS に相当し、他のすべてのプラットフォームでは nice 値 0 に相当します。
PRIORITY_ABOVE_NORMAL PRIORITY_NORMAL より上で PRIORITY_HIGH より下のプロセススケジューリング優先度です。これは Windows の ABOVE_NORMAL_PRIORITY_CLASS に相当し、他のすべてのプラットフォームでは nice 値 -7 に相当します。
PRIORITY_HIGH PRIORITY_ABOVE_NORMAL より上で PRIORITY_HIGHEST より下のプロセススケジューリング優先度です。これは Windows の HIGH_PRIORITY_CLASS に相当し、他のすべてのプラットフォームでは nice 値 -14 に相当します。
PRIORITY_HIGHEST 最も高いプロセススケジューリング優先度です。これは Windows の REALTIME_PRIORITY_CLASS に相当し、他のすべてのプラットフォームでは nice 値 -20 に相当します。

libuv 定数#

定数 説明
UV_UDP_REUSEADDR