Я пытаюсь создать несколько потоков в сценарии конвейера jenkins. Итак, я взял простой пример, как показано ниже. Но это не работает. Не могли бы вы дать мне знать?
В приведенном ниже примере jobMap содержит ключ в виде строки и значение в виде списка строк. Когда я просто отображаю список, значения выводятся правильно, но когда я использовал 3 разных способа создания потоков и, следовательно, отображения, он не работает.
for ( item in jobMap )
{
def jobList = jobMap.get(item.key);
**// The following loop is printing the values**
for (jobb in jobList)
{
echo "${jobb}"
}
// Реализация потока1:
Thread.start
{
for (jobb in jobList)
{
echo "${jobb}"
}
}
// Реализация потока2:
def t = new Thread({ echo 'hello' } as Runnable)
t.start() ;
t.join();
// Реализация потока3:
t1 = new Thread( new TestMultiThreadSleep(jobList));
t1.start();
}
class TestMultiThreadSleep implements Runnable {
String jobs;
public TestMultiThreadSleep(List jobs) {
this.jobs = jobs;
}
@Override
public void run()
{
echo "coming here"
for (jobb in jobs)
{
echo "${jobb}"
}
}
}