欢迎访问 生活随笔!

尊龙游戏旗舰厅官网

当前位置: 尊龙游戏旗舰厅官网 > > linux >内容正文

linux

linux驱动 -尊龙游戏旗舰厅官网

发布时间:2025/1/21 linux 14 豆豆
尊龙游戏旗舰厅官网 收集整理的这篇文章主要介绍了 linux驱动 - 多线程之 完成量 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

  linux 系统提供了一种比信号量更好的同步机制,即完成量(completion ,它用于一个执行单元等待另一个
执行单元执行完某事。
  linux 系统中与 completion 相关的操作主要有以下 4 种。

1.定义完成量
下列代码定义名为 my_completion 的完成量。

struct completion my_completion;

2.初始化 completion
下列代码初始化 my_completion 这个完成量。

init_completion(&my_completion);

对 my_completion 的定义和初始化可以通过如下快捷方式实现。

declare_completion(my_completion);

3.等待完成量
下列函数用于等待一个 completion 被唤醒。

void wait_for_completion(struct completion *c);

4.唤醒完成量
下面两个函数用于唤醒完成量。

void complete(struct completion *c); void complete_all(struct completion *c);

前者只唤醒一个等待的执行单元,后者释放所有等待同一完成量的执行单元。

转载于:https://www.cnblogs.com/farmpick/p/5160142.html

总结

以上是尊龙游戏旗舰厅官网为你收集整理的linux驱动 - 多线程之 完成量的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得尊龙游戏旗舰厅官网网站内容还不错,欢迎将尊龙游戏旗舰厅官网推荐给好友。

网站地图