-
Notifications
You must be signed in to change notification settings - Fork 3.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
waitForFreeSlotAt() uses LockSupport.parkNanos(1L) can take up to 15ms on Windows [moved] #16
Comments
I don't think this applies to the 3.0.x codeline. However I do note that SingleProducerSequencer and MultiProducerSequencer have a TODO on switching to use the provided wait strategy, if I get a chance I'll do some comparisons. May be of interest to Windows users as it uses parkNanos at the moment. |
Seems on AMD & windows, the parkNanos work not so well. |
It is specifically Windows that is the problem. I think that this should be the responsibility of the WaitStrategy and I should of made the change before the 3.0 release as it will mean changing a public API. |
The workaround in this case is to use one of the try... methods e.g. tryPublishEvent and handle the retry logic within user code, e.g. spin, yield, sleep. I may address this issue in the next major revision of the Disruptor or drop the blocking publish method entirely. |
how about this going on ? does disruptor drop the blocking publish method entirely ? |
Using the aforementioned work around is still the best option. |
This is Issue 16 moved from a Google Code project.
Added by 2012-01-10T10:17:07.000Z by thalmann...@gmail.com.
Please review that bug for more context and additional comments, but update this bug.
Original labels: Type-Defect, Priority-Medium
Original description
The text was updated successfully, but these errors were encountered: