どこから呼ばれたかによって変わるので,キャッシュのキーとかに使えないでしょうか.
require 'digest/sha1' def caller_sha1 Digest::SHA1.hexdigest caller.join('') end puts caller_sha1 puts caller_sha1 puts caller_sha1 (1..3).each { puts caller_sha1 }
d0e46ba4600056c2c76748dd74e64a25fd1a9b01 1dd7541926829656b736334402f7e6bbb4875542 483a3c80b0c6de81694295062003af59dcb3a9de 793546f0a804498964c0399d53c97dd936457459 793546f0a804498964c0399d53c97dd936457459 793546f0a804498964c0399d53c97dd936457459