These are operations to watch a directory to see if it changes (notice the
NotifyChangeDirectory?). They take a long time because the directory isn't changing, so they keep watching until they are cancelled. They're not intended to complete rapidly but to leave an operation in progress that can complete as a way of sending a message to the application that posted the operation.
Here's an excerpt from a discussion of someone else's similar log:
"The filter you applied only includes requests that take more than 30 seconds. The only requests that take so long are requests that block while waiting for something to happen, like NotifyChangeDirectory.
It is quite normal for a NotifyChangeDirectory to take a very long time - it actually just represents the time between modifications to the monitored directory." -- The Case of Slow Logons