我遇到一种情况,我需要在初始化等待队列后将其复制到另一个等待队列。我可以直接通过分配来做到这一点吗?有副作用吗? 这就是我想要的:
1. Initialize wait queue 1.
2. call poll_wait() on wait queue 1.
3. Copy wait queue 1 to wait queue 2.
最佳答案
您不能将一个等待队列复制到另一个等待队列中:每个wait元素最多只能属于一个等待队列。
如果您谈论将 waitqueue 移动到另一个位置,您可以尝试,但请注意,这不是设计意图。
如果调用poll_wait
,它肯定不支持移动等待队列。问题是,poll_wait()
调用实际 轮询表(在 .poll
回调实现中)将指向 waitqueue 的指针存储在 wait_address 中
字段(在 struct poll_table_entry
的 include/linux/poll.h
中定义)。
关于我们可以直接将一个等待队列分配给另一个吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32241748/