Olá, Eu trabalho com URAs, e tenho problemas parecidos pois uma placa de telefonia tem no mínimo quatro canais para o sistema gerenciar.
A solução imediata é a utilização de TThreads. E isso certamente muda bastante as estratégias que você utilizou. Sugiro a utilização de uma TThread para cada catraca, o que equivaleria - a grosso modo - a usar um executavél para cada catraca. [As partes desta mensagem que não continham texto foram removidas]