"Проблема" глобальных переменных в том что они глобальные.
Когда вы запустите 2 процесса то их данные у вас перемешаются и вы не получите ожидаемого результата.
Я бы посоветовал вам использовать один мастер-процесс, и универсальный список для синхронизации. Таким образом мастер-бп с параллельным выполнением дочерних БП, а на вход каждого БП подавать элемент созданный для синхронизации и уже в нем хранить.
Получить значение глобальной переменной можно многими путями, например через парсинг:
$globalVarAsdasd = $this->ParseValue('{'.'{Переменные глобальные: asdasd}}');
Взято
из книжки