live555本身是一个单进程.单线程的服务器,但是它能够完美的让多个客户端同时连接,除了使用select并发编程以外,延时队列是很重要的手段. 当连接一个客户端,进行视频帧传输的时候,是不能持续进行传输的,因为如果持续传输的话会占满整个线程,这样的话新的客户端便无法进行连接了,所以当传送一帧视频流的最后并不会马上再传送下一帧,而是调用scheduleDelayedTask()函数将传送下一帧的工作加入到延时队列里.这个步骤在函数sendPacketIfNecessary()中进行.下面是sch…