Anyone who considers arithmetical methods of producing random numbers is, of course, in a state of sin.
-- John von Neumann
The problem with calling it repeatedly is that you're not
really making things any more random. rand only
produces pseudorandom numbers based on the seed. You're
not increasing the amount of entropy you're going to get out
of it by multiple calls. In fact, if you're using things
such as the process id in the seed you might even be reducing
it (since the seeds could be `close' and put the generator
in states that could overlap).
Think of it this way: you've got a big book with pages full
of numbers. srand tells what page in the book
that rand should start reading from. Repeated calls
to srand won't put any more randomness into the
book, and might start reading numbers from pages you've already read.
If you're really concerned about the randomness of your numbers
then you want to forget rand all together and
look into Math::TrulyRandom, or Crypt::Random
if you have a /dev/random device available on your
OS.