With concurrency, we need to ensure that threads waiting to be executed actually get executed. The concept of spin-wait is a process that continually checks for a true condition. The Java platform has an API that permits Java code to issue hints that a spin loop is currently being executed.
While this is not a feature that every Java developer will use, it can be useful for low-level programming. The hint system simply issues hints—indications and performs no other actions. Justifications for adding these hints include the following assumptions:
- A spin loop's action time can be improved when using a spin hint
- Use of spin hints will reduce thread-to-thread latency
- CPU power consumption will be reduced
- Hardware threads will execute faster
This hint functionality will be contained in a new onSpinWait() method as part of the java.lang.Thread class. Here...