Hey folks,

I'm sorry to bring this topic up again because I know it has been mentioned on this list many times with no conclusive answer. (I even mentioned it when I was first toying with RB). But, here goes again.

I'm noticing that socket events can interrupt each other. That is, part way through one event, another event can start. Is there *any* conceivable reason why this could happen?

I have no threads in my application, no pragmas, no plugins, only one window, and right now I've caught the issue in action in the debugger. (RB2006r1, Windows XP, FYI). My stack (from the little pull down menu in the debugger) shows this:

TCPSocketSubclass.DataAvailable
Logger.Debug
TCPSocketSubclass.Error

That is, a DataAvailable event called on a socket subclass. This method calls my custom logger's debug method. In that debug method I loop through listeners to report this error. It is exactly on the first line of the for loop in the Logger.Debug() method which is highlighted in the debugger. That line reads:

for i = 0 to ubound( listeners )

Then the TCPSocketSubclass.Error event appears on the stack entirely interrupting the sequence of events.

The only thing I can see occurring here is some sort of compiler optimization in the for loop that calls the equivalent of App.DoEvents... is that possible?

This behaviour is intermittent so I'm having a hard time coming up with a clean test case, but I'll do my best.

Any pointers or suggestions would be very welcome.

Thanks,
jp




_______________________________________________
Unsubscribe or switch delivery mode:
<http://www.realsoftware.com/support/listmanager/>

Search the archives of this list here:
<http://support.realsoftware.com/listarchives/lists.html>

Reply via email to