Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked
 
PerlMonks  

Re: How to do simultaneous reads and writes to/from a socket?

by merlyn (Sage)
on May 10, 2006 at 13:05 UTC ( #548446=note: print w/ replies, xml ) Need Help??


in reply to How to do simultaneous reads and writes to/from a socket?

Rather than ithreads, consider an event system like POE. You can attach events to "line ready to read", and when the event triggers, you're the only one running so you can access your shared data easily without having to "lock" or "block".

-- Randal L. Schwartz, Perl hacker
Be sure to read my standard disclaimer if this is a reply.


Comment on Re: How to do simultaneous reads and writes to/from a socket?
Re^2: How to do simultaneous reads and writes to/from a socket?
by sonofason (Sexton) on May 10, 2006 at 14:00 UTC

    jesuashok: Perhaps I should have mentioned earlier that I am working under Windows. Apparently, doing non-blocking socket IO under Windows is a little problematic, as discussed here. The polling solution does work well though and hopefully won't consume too much resources if I sleep for a short time (since I want to act immediately on incoming data) in between polls.

    merlyn: I will take a look at POE and see how it can help me.

    MonkE: I do understand that much more is needed for the server, but the code I posted was just a simplified exerpt from the client program. Thanks though!

    Many thanks!
    sonofason

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://548446]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (13)
As of 2014-07-30 12:03 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (231 votes), past polls