class Salus::CPU
Public Class Methods
count()
click to toggle source
# File lib/salus/thread/cpu.rb, line 3 def self.count @count ||= self.get_count end
Private Class Methods
get_count()
click to toggle source
# File lib/salus/thread/cpu.rb, line 8 def self.get_count return Java::Java.lang.Runtime.getRuntime.availableProcessors if RUBY_PLATFORM == "java" return File.read('/proc/cpuinfo').scan(/^processor\s*:/).size if File.exist?('/proc/cpuinfo') require 'win32ole' WIN32OLE.connect("winmgmts://").ExecQuery("select NumberOfLogicalProcessors from Win32_Processor") .to_enum.collect(&:NumberOfLogicalProcessors).reduce(:+) rescue LoadError Integer `sysctl -n hw.ncpu 2>/dev/null` rescue 1 end