Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"
 
PerlMonks  

Comment on

( #3333=superdoc: print w/ replies, xml ) Need Help??

I guess, the module you create is already called from some event-driven system. In other words, your module is a "callback". The "callback" can't run it's own event distribution. You can register one more "callback" with the main system and then simply return control to the caller. The main system is then responsible for activating your new callback at appropriate time.

The AnyEvent module is event-distribution system. When you call $w->recv you activate this system, which blocks the main one, which in turn might trigger some time-out for killing your callback. Figure out how to add timers to the main framework. I don't know Plack and don't have any desire to study it, so I can't help you with this, sorry.

At the core, event-driven programming is very simple. The main part is manager looping over all possible events. When event is encountered, the manager checks if there are any "callbacks" waiting for this event. Those callbacks are activated and the looping continues. The callbacks must finish their work quickly and if necessary, they can register more callbacks for different events.

Everything else, is specific ways, how different managers keep track of callbacks and events.


In reply to Re^3: PSGI, Plack, Twiggy, AnyEvent and SockJS... I need help by andal
in thread PSGI, Plack, Twiggy, AnyEvent and SockJS... I need help by xtpu2

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!
  • 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, 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, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • Outside of code tags, you may need to use entities for some characters:
            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.
  • Log In?
    Username:
    Password:

    What's my password?
    Create A New User
    Chatterbox?
    and the web crawler heard nothing...

    How do I use this? | Other CB clients
    Other Users?
    Others exploiting the Monastery: (9)
    As of 2014-07-30 20:38 GMT
    Sections?
    Information?
    Find Nodes?
    Leftovers?
      Voting Booth?

      My favorite superfluous repetitious redundant duplicative phrase is:









      Results (240 votes), past polls