报告被声明为 volatile 的数组字段。 此类声明可能令人困惑,因为访问数组本身遵循 volatile 字段的规则,但访问数组的内容时并非如此。

示例:


  class Data {
    private volatile int[] idx = new int[0];
  }

如果需要对数组内容进行此类可变访问,不妨改用 java.util.concurrent.atomic 类:


  class Data {
    private final AtomicIntegerArray idx = new AtomicIntegerArray(new int[0]);
  }