A interceptação de etapa única funciona levantando uma exceção após a conclusão de cada instrução. O uso usual dessa armadilha é que o seu depurador detecta essa exceção e permite que você examine as coisas antes de "percorrer" a próxima instrução.
Se você está pensando em fazer isso para rastreio, fazendo um registro detalhado do que seu código está fazendo, seu rastreador / depurador será invocado como um manipulador de exceção, registre o que você deseja registrar e, em seguida, descarte o exceção - repita. Espero que isso diminua a taxa de execução do código que você está rastreando por um fator de uma a várias centenas ... pelo menos.
Em relação às suas ideias para instruções de intercalação de vários encadeamentos, essa não é a maneira de resolver seu problema de serialização. Você precisa resolvê-lo - comprovadamente - no design.