Skip to content

Conversation

@mark8044
Copy link

@mark8044 mark8044 commented Apr 3, 2025

In my use case, Id like to cancel a Queue and get rid of all the items within the queue, but without throwing the QueueCancelledException. A so called 'silent' cancel.

Here I've added an option supressErrorsOnCancel which defaults to false so it doesn't do any breaking changes
But if its true then instead of doing a .completeError it will just do a .complete

This is the part I'm unsure if it's going to function as intended. In my own use case this seems to be working just fine. But please review if you think it should be merged in.

Essentially, I'm expecting that it will just close out the queue item with a .complete without actually executing the queue item. If its not working like that then please feel free to reject this PR

@rknell
Copy link
Owner

rknell commented Apr 3, 2025

So I have no problem with a silent cancel, I guess my only foreseeable problems would be around maintaining null safety when its completed, and perhaps memory leaks. I'll need to dig into the code to ensure both of those wont be an issue - but realistically if your PR has all the tests passing, the memory leak and null safety issues are probably already existing in the code and haven't been thought about anyway.

@mark8044
Copy link
Author

mark8044 commented Apr 3, 2025

So I have no problem with a silent cancel, I guess my only foreseeable problems would be around maintaining null safety when its completed, and perhaps memory leaks. I'll need to dig into the code to ensure both of those wont be an issue - but realistically if your PR has all the tests passing, the memory leak and null safety issues are probably already existing in the code and haven't been thought about anyway.

Sounds great-- mainly I'm concerned that by putting in .complete, it doesn't go ahead and execute the queue item. Hopefully you don't see that happening on your end

@mark8044
Copy link
Author

@rknell Just wanted to bump this

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants