Best Practice for Busy Waiting in Java
Archie Cobbs
archie.cobbs at gmail.com
Sun Jun 15 16:40:50 UTC 2025
Just MHO...
This is kind of like asking "What's the best way to waste electricity?"
It's a nebulous question until you specify what "best" means in this odd
scenario....
-Archie
On Sun, Jun 15, 2025 at 11:09 AM Markus KARG <markus at headcrashing.eu> wrote:
> Recently I was asked by a programmer, what to do if there simply is no
> other way than actually busy-wait.
>
> I see several options:
>
> * Do nothing: Costs valuable CPU time and increases carbon footprint.
>
> * Do a power-nap: Thread.sleep(1)
>
> * Be fair: Thread.yield() gives other threads a chance to execute in
> this time slot.
>
> * Be eco-friendly: Thread.onSpinWait() could reduce carbon footprint.
>
> * A combination of that, like "Thread.yield(); Thread.onSpinWait();"
>
> As all of that has its pros and cons, and as all of that works
> differently on each hardware platform, I do wonder if there is some
> common sense / best practice for busy wait (other than "Replace it using
> async") in the core-libs team?
>
> Thanks!
>
> -Markus
>
>
>
>
--
Archie L. Cobbs
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/core-libs-dev/attachments/20250615/ecee4a18/attachment-0001.htm>
More information about the core-libs-dev
mailing list