LwIP Platform Developers Manual 中文翻译(13)

2020-12-22 08:09

信号量

信号量可以是计数的也可以是二进制的。信号量被类型sys_sem_t所描述,该类型在sys_arch.h文件中被定义。lwIP并不会限制sys_sem_t是如何被定义或描述,它是一个指向操作系统的信号量或对操作系统信号量封装的结构体。如下一些函数一定要被定义:

sys_sem_t sys_sem_new(u8_t count):创建并返回一个新的信号量。count参数指定了信号量的初始化状态。该函数返回一个信号量或者SYS_SEM_NULL(当发生错误时)。

void sys_sem_free(sys_sem_t sem):释放一个被sys_sem_new创建的信号量。由于这两个函数提供了LwIP信号量的进入和退出,你有很大的灵活度来如何分配或解除这些信号量(比如,从堆,一个内存池,一个信号量的池,等等)。

void sys_sem_signal(sys_sem_t sem):发送(或释放)一个信号量。

u32_t sys_arch_sem_wait(sys_sem_t sem,u32_t timeout):阻塞线程直到该信号量被通知。timeout参数指定该函数在返回前要被阻塞多少毫秒。如果时间到了,该函数将返回SYS_ARCH_TIMEOUT。如果timeout等于0,那么该函数会被永远阻塞直到被信号量通知。


LwIP Platform Developers Manual 中文翻译(13).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:交通处罚单管理系统(C程序设计)修改版

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: