首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过automic以互斥的方式挑选文件?

如何通过automic以互斥的方式挑选文件?
EN

Stack Overflow用户
提问于 2018-05-22 23:46:34
回答 1查看 24关注 0票数 0

我们在短时间间隔内从mainframes.we收到两个不同的文件,无法预测文件的到达顺序。这些文件应该由两个不同的工作流程挑选。但它应该以互斥的方式触发。换言之,如果一个工作流正在运行,则其他工作流必须等待前一个工作流。

EN

回答 1

Stack Overflow用户

发布于 2018-05-23 06:32:13

这可以通过在公共位置设置一些标志来实现。并且每个作业都应该访问该位置,如果设置了该标志,则等待该标志被取消设置。

基于上面的陈述,在执行任何一个工作流之前,我已经在unix服务器上的特定位置创建了一个文件。任何工作流都会在特定位置看到该文件,如果该文件存在,则它会等待该文件被先前启动的前一个作业删除。

下面是unix脚本,用于创建文件并等待删除文件。可以在前置处理页签的工作流的第一个作业中定义。

代码语言:javascript
复制
#!/bin/bash
while true
do
        files=$(ls /u/users/lock 2> /dev/null | wc -l)
        if [ "$files" != "0" ]
        then
              echo "Other <workFlow name> is running wait for 10 second"
                sleep 10
        else
              echo "<workFlow name > is not running so <current workflow name> is starting"
              touch /u/users/lock
              exit 0
        fi
done

要删除以下工作流程末尾的文件,请使用unix脚本。此脚本必须在进程选项卡中最后一个作业中定义。

代码语言:javascript
复制
#!/bin/bash
echo "<current workFlow name> is finshed so releasing the lock"
files=$(ls /u/users/lock 2> /dev/null | wc -l)
if [ "$files" != "0" ]
then
  rm /u/users/lock
fi
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50471760

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档