Структура шаблона такая (без OnApplicationStart):
Получить номер потока
Если номер потока = 1
Функция 1
Пока правда
Функция 2
Функция 3
Если номер потока > 1
Функция 4
Пока правда
Функция 5
При такой структуре БАС проделывает Функции 1,2,3 и зависает вместо того, чтобы вернуться в начало вечного цикла для потока.
Если изменить одно из условий так, чтобы оно не выполнялось (то есть чтобы работал только первый поток, а остальные завершались сразу или чтобы работали все потоки кроме первого), все нормально.
По любому есть другие способы организации, но но нужно именно так - первый поток главный, он управляет данными, используемыми всеми другими потоками. Как я могу составить шаблон по другому, но придерживаясь этой архитектуры?
P.S Когда выполняется один поток, он не повторяет нужные функции в вечном цикле вечно, а завершается после какого-то количества повторов, постоянно разного. Это тоже странно и крайне нежелательно, так как шаблон должен работать в мое отсутствие.