⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rtpqueue.c

📁 comer s TCPIP-vol3源代码...当然是经典咯
💻 C
字号:
/* rtpqueue.c - rtpqdequeue, rtpqinsert */#include <rtp.h>/*------------------------------------------------------------------------ * rtpqdequeue - remove the oldest packet from the RTP packet queue *------------------------------------------------------------------------ */struct rtpln *rtpqdequeue(void){  	struct rtpln *p, *pln;  	(void) pthread_mutex_lock(&stm.stm_qmutex);	if ((pln = stm.stm_qhead) != NULL) {		if ((p = pln->rln_prev) != NULL) {			stm.stm_qhead = p;			p->rln_next = NULL;		} else 			stm.stm_qtail = stm.stm_qhead = NULL;	}	(void) pthread_mutex_unlock(&stm.stm_qmutex);	return pln;}/*------------------------------------------------------------------------ * rtpqinsert - insert a packet into the RTP packet queue *------------------------------------------------------------------------ */boolrtpqinsert(struct rtpln *pln){  	struct rtpln	*p, *q = NULL;	bool            head = FALSE;	(void) pthread_mutex_lock(&stm.stm_qmutex);	for (p = stm.stm_qtail; p != NULL && p->rln_seq > pln->rln_seq;	     q = p, p = p->rln_next);	if (q != NULL)		q->rln_next = pln;	else		stm.stm_qtail = pln;	pln->rln_prev = q;	if (p != NULL)		p->rln_prev = pln;	else		stm.stm_qhead = pln;	pln->rln_next = p;  	head = pln == stm.stm_qhead;	(void) pthread_mutex_unlock(&stm.stm_qmutex);	return head;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -