Я обычно блокирую ресурсы в своем декларативном конвейере с помощью чего-то вроде:
lock(resource: "MY_RESOURCE") {
// do something
}
, но теперь у меня есть несколько различных ресурсов, которые я мог бы использовать, есть ли способ проверить, заблокирован ли ресурс?
Я хотел бы сделать что-то вроде:
myResources = ["RES1", "RES2", "RES3"]
hasResource = false
for (resource in myResources) {
if (hasresource) {
break
}
if (!isLocked(resource)) {
hasresource = true
lock(resource) {
// do something
}
}
}
(извините, если синтаксис неправильный, я не очень часто программирую на groovy)