There is a global workqueue, so you don't actually have to set up your own workqueue, you just have to have your one work item with the 3 line of code that I described. Perhaps it is still overkill, but it would make the code much easier to read/follow.