I thought of using fork. but in case I have 100 files, I must have to fork 100 times, where one process reads one file at a time and pumping data to a single(same) client. When the second client connects it would be a mass fork of again 100 processes.

Maybe I'm the only one who has trouble understanding this paragraph as others have answered without quesioning it, but it's not at all clear to me why you feel you need to "fork 100 times" in order for "one process reads one file at a time and pumping data to a single(same) client"?

Essentially, it is not clear from your post what you trying to do, but reading between the lines, it may be something like:

  1. Open a listening socket:
  2. When a client connects, select one of 100 hundred files and send it to that client; disconnect.
  3. Repeat.

If that's an accurate picture of the requirement, then it can easily be satisfied with either fork or threads, and without the 'mass spawnings' that you seem to think are involved.

If that is an inaccurate description of then you need to clarify the actual requirements before you will get useful answers.


Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.
"Too many [] have been sedated by an oppressive environment of political correctness and risk aversion."

In reply to Re: choosing threads by BrowserUk
in thread choosing threads by targetsmart

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.