Open In App

AtomicReferenceArray getOpaque() method in Java with Examples

Last Updated : 02 Jun, 2020
Improve
Improve
Like Article
Like
Save
Share
Report

The getOpaque() method of a AtomicReferenceArray class is used to return the value of the element at index i for this AtomicReferenceArray object with memory effects as specified by VarHandle.getOpaque(java.lang.Object…). This VarHandle.getOpaque(java.lang.Object…) method handles operation with no assurance of memory ordering effects with respect to other threads.

Syntax:

public final E getOpaque(int i)

Parameters: This method accepts the index i to get the value.

Return value: This method returns the current value at index i.

Below programs illustrate the getOpaque() method:
Program 1:




// Java program to demonstrate
// AtomicReferenceArray.getOpaque() method
  
import java.util.concurrent.atomic.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create an atomic reference array
        // object which stores Integer.
        AtomicReferenceArray<Integer> array
            = new AtomicReferenceArray<Integer>(5);
  
        // set some value in array
        array.set(0, 987);
        array.set(1, 988);
        array.set(2, 989);
        array.set(3, 986);
  
        // get and print the value
        // using getOpaque method
        for (int i = 0; i < 4; i++) {
  
            int value = array.getOpaque(i);
            System.out.println("value at "
                               + i + " = "
                               + value);
        }
    }
}


Output:

Program 2:




// Java program to demonstrate
// AtomicReferenceArray.getOpaque() method
  
import java.util.concurrent.atomic.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create a array of Strings
        String[] names
            = { "AMAN", "AMAR", "SURAJ" };
  
        // create an atomic reference object.
        AtomicReferenceArray<String> array
            = new AtomicReferenceArray<String>(names);
  
        // get and print the value
        // using getOpaque method
        for (int i = 0; i < array.length(); i++) {
  
            String value = array.getOpaque(i);
            System.out.println("value at "
                               + i + " = "
                               + value);
        }
    }
}


Output:

References: https://docs.oracle.com/javase/10/docs/api/java/util/concurrent/atomic/AtomicReferenceArray.html#getOpaque(int)



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads