Ok here's what it looks like is happening.
I'm initializing the TaskScheduler, the usageEnvironment, and my
RTSPClient instance and then calling TaskSchedular::doEvenLoop() without
having initiated any RTSP connection (I've been doing that later after
the fact via an outside signal).
The first time BasicTaskScheduler::SingeStep is called the fReadSet,
fWriteSet, and fExceptionSet are all empty and select() returns an error
(WSAINVAL) and the code starting on line 86 of BasicTaskScheduler.cpp
(did I mention I'm on Windows) gets invoked to create a dummySocket so
that the error doesn't occur again. However, the problem is from then on
select() will always return immediately indicating that dummySocket is
ready for writing and that's why my client is spinning at 100 percent on
the CPU.
So I realize that I'm doing things a little different that openRTSP()
but I don't think I'm doing anything wrong and my code has worked just
fine for the last 2 years. Is this a bug in the library (maybe the
dummySocket shouldn't be added to the fWriteSet) or should I change the
way my code works?
Thanks,
Matt S.
On 6/29/2011 10:38 AM, Matt Schuckmannn wrote:
I just updated my code to use the latest Live555 code and I
imeadiately noticed that my RTSP client application is spinning on the
processor and taking up 100% of the processor it's running on. I tried
running OpenRTSP against the same server and I don't the problem. The
main difference between OpenRTSP and my client is my client is still
using the synchronous interface and OpenRTSP isn't.
The application seems to be spinning in the
taskScheduler().doEventLoop(), and or SingleStep() methods. It's
almost as if Select() is always returning immediately or something
like that.
Did I miss something that I should have changed with my client?
I did noticed that with the new synchronous interface I am nesting
calls to doEventLoop().
i.e. my app cals doEventLoop() at start up and then each time I I need
to send a SET_PARAMETER command the synchronous interfaces calls
doEventLoop() again, Could this be the problem?
I'll continue to debug and figure it out, but I appreciate any
suggestions.
Matt S.
_______________________________________________
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel
_______________________________________________
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel