【问题标题】:Can a work submitted to linux workqueue schedule itself提交给 linux workqueue 的工作可以自己调度吗
【发布时间】:2021-10-29 05:16:53
【问题描述】:

PFB伪代码:

struct work_struct my_work;

my_wq = alloc_workqueue();

INIT_WORK(&my_work, worker_func);

void worker_func() {

  if (condition)
      queue_work(my_wq, my_work);

}

这是否允许?

【问题讨论】:

  • 请澄清您的具体问题或提供其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。

标签: c linux kernel workqueue


【解决方案1】:

是的,完全允许在执行其功能时重新提交作品。

还允许取消分配执行功能的工作结构。 工作队列的实现已经准备好了(kernel/workqueue.c):

允许从 struct work_struct 中释放 在从中调用的函数内部,我们需要 也要考虑 lockdep...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-14
    • 1970-01-01
    • 1970-01-01
    • 2011-08-15
    • 1970-01-01
    相关资源
    最近更新 更多