Are workqueues cumulative?
Hi All,
I have a question regarding workqueues. I read that tasklets can be eliminated by workqueues. And I would like to know whether they are cumulative or not. In other words what happens when a workqueue which is scheduled already is rescheduled before it get a chance to run for the first schedule. Thanks, Grep |
The essential idea behind a workqueue is that in most cases you don't need a bunch of individual tasklets lying around just to handle "delayed work." What is done instead is to add them to a queue that is serviced by a kernel thread which exists for this purpose.
This accomplishes the essential purpose ("delayed work") in a very simple way. In the case that you describe, there won't be any problem or conflict. When work is scheduled on a queue (no matter how many redundant times), it will be serviced "real soon now, somewhere." |
Hi Sun,
Thanks for your reply. Sorry that i still have some doubts after your reply. Let me make things clear. For tasklets, if a tasklet is scheduled again ,before it gets a chance to run for the first schedule ultimately they will run only once not twice for two schedule. Is that the same for workqueues ? What i interpret from your response is, this is not same for workqueues. Is that right buddy? Sorry again, for not able to get what i need from your answer. Thanks, Greplinux |
update
Hi,
I have an update regarding this one. It is not possible to queue the same work more than once in a queue (ie) If a work is queued and it is not possible to queue the same work another time before it gets a chance to run . I hope this will bring an end to my dilemma,since here no cumulative kinda of thing is involved. Any more information will be appreciated. Thanks, Grep. |
All times are GMT -5. The time now is 11:30 PM. |