我可以在 Java 中创建条件变量数组吗?
Can I create an array of Condition variables in Java?
我正在尝试使用条件变量实现监视器。我的问题是我想创建很多条件变量。
private Lock lock = new ReentrantLock();
final Condition[] self;
如何初始化条件类型 self
数组?
感谢 Slaw 和 Stephen C 纠正我糟糕的第一个答案。
初始化您的 final
数组,就好像它不是最终数组一样。 [Slaw's not exact words->] final 关键字表示不能将数组重新分配给新数组。您仍然可以 modify
数组中的元素。
例如,您可以将数组 "self" 初始化为 new Condition[1];
,然后执行 self[0] = new Condition()
,然后执行 System.out.println(self[0]);
。
我建议创建一个条件列表。
代码示例:
List<Condition> conditions = new ArrayList<Condition>();
Lock lock = new ReentrantLock();
conditions.add(lock.newCondition());
我正在尝试使用条件变量实现监视器。我的问题是我想创建很多条件变量。
private Lock lock = new ReentrantLock();
final Condition[] self;
如何初始化条件类型 self
数组?
感谢 Slaw 和 Stephen C 纠正我糟糕的第一个答案。
初始化您的 final
数组,就好像它不是最终数组一样。 [Slaw's not exact words->] final 关键字表示不能将数组重新分配给新数组。您仍然可以 modify
数组中的元素。
例如,您可以将数组 "self" 初始化为 new Condition[1];
,然后执行 self[0] = new Condition()
,然后执行 System.out.println(self[0]);
。
我建议创建一个条件列表。
代码示例:
List<Condition> conditions = new ArrayList<Condition>();
Lock lock = new ReentrantLock();
conditions.add(lock.newCondition());