我有一些未设置数量的作业,这些作业以“读取”方式使用资源A。 所有这些作业都可以同时运行。
我还有一个“写”到A的作业。该作业不能与“阅读器”作业并行运行。
我如何为詹金斯管道解决这个问题?
有没有一种方法可以实现简单的“读写锁定”?
看来lock()
仅可用于实现排他锁。
答案 0 :(得分:1)
有一种方法可以创建带有标签的多个资源,例如“ mylabel”(与您拥有的读者数量一样多)。我相信数量参数is poorly documented。
阅读器锁
z= x= y=
[18,16,12; [5,5,5; [30,60,85;
40,37,33; 10,10,10 30,60,85;
82,79,75] 20,20,20] 30,60,85;]
写手锁-没有数量-因此这是默认值,全部需要
lock(label: 'mylabel', quantity: 1) {
...