ICallbackEventHandler - bottleneck?

Discussion in 'ASP .Net' started by Ian, Jan 3, 2007.

  1. Ian

    Ian Guest

    Question: Is there a way to multi-thread ICallbackEventHandler using
    delegates?

    Problem: I'm executing client-side calls to my page, which implements
    ICallbackEventHandler. I need to implement ICallbackEventHandler in
    order to access the state of various 3rd party controls I'm working
    with.

    I have one method in particular which takes a long time to process,
    roughly 30 seconds or so. My goal is to allow other methods to be
    processed while this runs in the background. What I've found so far,
    though, is that any calls executed after the lengthy one seem to queue
    up, and none of their callbacks are executed until the 1st method is
    completed.

    I am not familiar enough with the ICallbackEventHandler life-cycle
    model nor async delegates to dig very far into it, so I might be
    missing something obvious.

    I haven't had much luck finding discussions of this issue. The best
    resource I found so far is:
    http://www.eggheadcafe.com/articles/20060918.asp, which states in part:
    "Page class lifecycle completion is halted pending the return of all
    async method calls"

    Thanks,

    Ian
     
    Ian, Jan 3, 2007
    #1
    1. Advertising

  2. Ian

    bruce barker Guest

    in general the browser only allows 2 (unless you make a change in the
    registry) concurrent connections to the server. so, this may cause blocking.

    asp.net if you use session queues requests also (1 at a time), so this
    will cause blocking (and is probably what is causing your behavior).

    you should not make a 30 second call, as this will lead to instablilty.
    you should change the long call to two. one to starts the request (on a
    seperate thread). and a second that polls for completion.


    -- bruce (sqlwork.com)



    Ian wrote:
    > Question: Is there a way to multi-thread ICallbackEventHandler using
    > delegates?
    >
    > Problem: I'm executing client-side calls to my page, which implements
    > ICallbackEventHandler. I need to implement ICallbackEventHandler in
    > order to access the state of various 3rd party controls I'm working
    > with.
    >
    > I have one method in particular which takes a long time to process,
    > roughly 30 seconds or so. My goal is to allow other methods to be
    > processed while this runs in the background. What I've found so far,
    > though, is that any calls executed after the lengthy one seem to queue
    > up, and none of their callbacks are executed until the 1st method is
    > completed.
    >
    > I am not familiar enough with the ICallbackEventHandler life-cycle
    > model nor async delegates to dig very far into it, so I might be
    > missing something obvious.
    >
    > I haven't had much luck finding discussions of this issue. The best
    > resource I found so far is:
    > http://www.eggheadcafe.com/articles/20060918.asp, which states in part:
    > "Page class lifecycle completion is halted pending the return of all
    > async method calls"
    >
    > Thanks,
    >
    > Ian
    >
     
    bruce barker, Jan 4, 2007
    #2
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Glenn

    Performance Bottleneck in ASP.NET

    Glenn, Jan 8, 2004, in forum: ASP .Net
    Replies:
    2
    Views:
    576
    Glenn.
    Jan 8, 2004
  2. =?Utf-8?B?bWF0dmRs?=

    Access to remote application and bottleneck

    =?Utf-8?B?bWF0dmRs?=, Jul 10, 2005, in forum: ASP .Net
    Replies:
    0
    Views:
    354
    =?Utf-8?B?bWF0dmRs?=
    Jul 10, 2005
  3. David Zimmerman
    Replies:
    1
    Views:
    2,122
    Harald Kirsch
    Jul 22, 2003
  4. Roedy Green
    Replies:
    6
    Views:
    3,296
    Steve Horsley
    Jul 23, 2003
  5. JLM
    Replies:
    2
    Views:
    1,467
Loading...

Share This Page