> On Aug 3, 2021, at 8:34 AM, Ross Finlayson <finlay...@live555.com> wrote:
> 
> I am also puzzled by your description of the error as a ‘stack overflow’,  
> because the server should handle concurrent requests - even requests for the 
> same file - as separate, sequential events within the event loop 
> (“BasicTaskScheduler”, in this case).  So I don’t see where any excessive 
> recursion (causing a stack overflow) could be happening.  It is true that 
> operating systems place limits on the number of open files, and that this may 
> cause the server to stop responding after receiving a large number of 
> concurrent requests - but this should not be causing a stack overflow.

Answering my own question here: I can see now where the code - when reading MP3 
files - tries to do synchronous reads, and can make another call to 
“doEventLoop()” (within “waitUntilSocketIsReadable()”) if the input socket is 
not readable.  So this is where a stack overflow might occur.

I will shortly be releasing a new version of the code that fixes the server 
handling of MP3 files to do proper asynchronous file reads, as is already done 
when handling other file types.

Thanks again for the report.


Ross Finlayson
Live Networks, Inc.
http://www.live555.com/


_______________________________________________
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel

Reply via email to