Hi Gurus,

Yes - I know, what I am trying to do may have been discussed a lot but I couldn't find what I am trying to do.

Here's what I need. I have a list of servers, which I have stored in an array. These servers aren't all that reliable, so I need to make sure I can connect to them before using them in my code. Obviously, I cannot stick to one working server and keep using it, as it's not good load balancing. What I want is something like this:

my connectionStatus = "down"; @listOfServers=("abc","def","lmn","stu","xyz"); while (connectionStatus eq "down") { my $randomServer = $listOfServers[rand @listOfServers]; #Try to connect to $randomServer if ($connect == 1) { connectionStatus = "up"; } else { connectionStatus = "down"; } ## Need to Delete the server in $randomServer from @listOfServers and +pick one randomly and try again ## }

I read about using hashes and grep, but is there something simpler? I dont think I can use splice here as I dont know the index of the random element I just picked...

Any Suggestions?


In reply to Pick random element from array and delete it by vishi

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.