waitForJobs: don't wait for setInterval() jobs.#115
Open
alexgo91 wants to merge 1 commit intoHtmlUnit:masterfrom
Open
waitForJobs: don't wait for setInterval() jobs.#115alexgo91 wants to merge 1 commit intoHtmlUnit:masterfrom
alexgo91 wants to merge 1 commit intoHtmlUnit:masterfrom
Conversation
In JavaScriptJobManagerImpl, method waitForJobs() waits for all kinds of jobs, including never-ending jobs created by setInterval(). The caller wouldn't expect this method to block indefinitely and it causes some scenarios to get stuck. Also, for correctness - synchronized block should wrap final job count check as well.
Member
|
What about using waitForJobsStartingBefore(final long delayMillis, final JavaScriptJobFilter filter)? |
Author
|
I am thinking about the user of HtmlUnit - it will be more simpler for him to say "wait for all tasks", instead of defining filter + delay (which is not always clear as it depends on the performance of the website). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
In JavaScriptJobManagerImpl, method waitForJobs() waits for all kinds of
jobs, including never-ending jobs created by setInterval(). The caller
wouldn't expect this method to block indefinitely and it causes some
scenarios to get stuck.
Also, for correctness - synchronized block should wrap final job count
check as well.