我正在尝试使用条件变量来实现Monitor。我的问题是我想创建许多Condition变量。
private Lock lock = new ReentrantLock();
final Condition[] self;
如何初始化条件类型self
数组?
答案 0 :(得分:0)
感谢Slaw和Stephen C纠正了我可怕的第一答案。
初始化final
数组,就好像它不是最终数组一样。 [Slaw的字眼不正确->] final关键字表示您无法将数组重新分配给新数组。您仍然可以modify
数组中的元素。
例如,您可以将数组“ self”初始化为new Condition[1];
,然后执行self[0] = new Condition()
,然后再执行System.out.println(self[0]);
。
答案 1 :(得分:0)
我建议创建条件列表。
代码示例:
List<Condition> conditions = new ArrayList<Condition>();
Lock lock = new ReentrantLock();
conditions.add(lock.newCondition());