當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Ruby Etc.nprocessors用法及代碼示例


本文簡要介紹ruby語言中 Etc.nprocessors 的用法。

用法

nprocessors()

返回在線處理器的數量。

結果旨在作為使用所有可用處理器的進程數。

此方法使用以下方法實現:

  • sched_getaffinity():Linux

  • sysconf(_SC_NPROCESSORS_ONLN):GNU/Linux、NetBSD、FreeBSD、OpenBSD、DragonFly BSD、OpenIndiana、Mac OS X、AIX

例子:

require 'etc'
p Etc.nprocessors #=> 4

結果可能比物理 cpu 小,尤其是當 ruby 進程綁定到特定 cpu 時。這是為了獲得更好的並行處理。

示例:(Linux)

linux$ taskset 0x3 ./ruby -retc -e "p Etc.nprocessors"  #=> 2

相關用法


注:本文由純淨天空篩選整理自ruby-lang.org大神的英文原創作品 Etc.nprocessors。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。