Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Talend作业中使用多线程执行时,如何同步两个子对象?_Java_Multithreading_Talend - Fatal编程技术网

Java 在Talend作业中使用多线程执行时,如何同步两个子对象?

Java 在Talend作业中使用多线程执行时,如何同步两个子对象?,java,multithreading,talend,Java,Multithreading,Talend,我正在使用Talend Open Studio处理大数据,我想知道如何将作业中执行的两个子对象与多线程执行同步 我想并行执行两个子作业,只有在这两个作业完成执行后,我才想执行第三个作业。基本上,只有在Job1和Job2完成执行之后才执行Job3 我知道我可以使用tParallelize和Synchronize来实现这一点,但我没有使用Talend Enterprise edition 关于这个话题的讨论似乎不多,所以我们将不胜感激 谢谢 这里有一个解决方案: 将两个子作业包装到父作业中,并对其启

我正在使用Talend Open Studio处理大数据,我想知道如何将作业中执行的两个子对象与多线程执行同步

我想并行执行两个子作业,只有在这两个作业完成执行后,我才想执行第三个作业。基本上,只有在Job1和Job2完成执行之后才执行Job3

我知道我可以使用tParallelize和Synchronize来实现这一点,但我没有使用Talend Enterprise edition

关于这个话题的讨论似乎不多,所以我们将不胜感激

谢谢

这里有一个解决方案:

将两个子作业包装到父作业中,并对其启用多线程执行(转到作业选项卡>额外>检查多线程执行)

然后在另一个作业(父级作业)中,调用将您的两个子作业(父级作业)包装在
tRunJob
中的作业,然后调用
OnSubjobOk
,调用您的第三个子作业


当您运行父级作业时,它将运行父级作业,父级作业本身将并行运行两个子作业,当它结束时,它将调用第三个子作业。

我刚刚从这个链接中了解到这种方法:看起来这是实现这一点的唯一方法。