[Live-devel] a question about putting FramedSource::afterGetting in delay queue

Ross Finlayson finlayson at live555.com
Mon Dec 6 01:51:09 PST 2010


>     I have a question. When the RTSPServer uses the following code
> 
>envir().taskScheduler().scheduleDelayedTask(0,(TaskFunc*)FramedSource::afterGetting, 
>this);
>     to put FramedSource::afterGetting in DelayQueue, then the 
>openRTSP immediately sends a 'TEARDOWN' command to the Server, as we 
>know, in SingleStep function any delayed event is handled after 
>socket handler, so I think the RTSPServer will probably handle 
>'TEARDOWN' first. However handleCmd_TEARDOWN will cause to delete 
>RTSPClientSession object and also to delete related ***Source, 
>***RTPSink. So in this situation, can FramedSource::afterGetting be 
>called normally?

No, because that 'delayed task' will have been removed from the queue 
when the object was deleted (see Medium::~Medium()).


-- 

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


More information about the live-devel mailing list