What is the meaning of $$ in Ruby?
irb(main):002:0> $$
=> 5052
What is th开发者_高级运维e meaning of $$
in Ruby and How/Where to use it?
$$
is the process ID. It's named that way to follow Perl, which in turn followed the Bourne shell; both of them also use $$
in the same way.
This seems like a good reference for stuff like this...has a lot of symboly goodness.
It's the process ID of the Ruby interpreter. $ is a prefix for global variables, see here for a list.
pipe = IO.popen("")
if pipe
STDERR.puts "In parent, child pid is #{pipe.pid}"
else
STDERR.puts "In child, pid is #{$$}"
end
This example shows how the process ID can be used. Process ID is part of 'Execution Environment Variables' (part of predifined variables).
It's the process ID of the current Ruby process. Read-only
精彩评论