Pergunta

Eu sou uma espécie de conceitualmente concepção de um plug-in que eu adoraria ter aqui. O que eu quero é ser um capaz de linha de tag no meu código (algo como como pontos de interrupção são adicionados) e, em seguida, obter um registo de rastreio de quando é executado de execução embora eles. Ao invés de pontos de interrupção definidos (porque eles não funcionam fora do depurador), eu prefiro que dentro do compilador, o registo adicional ser adicionado para que o AST.

O ponto principal seria a de comparar diferentes execuções de um programa; ele trava se eu fizer A, mas não se eu fizer B e a maior parte do código deve ser o mesmo para que onde está divergindo?

Agora eu estou fazendo isso com o arquivo IO e uma ferramenta de comparação; ele funciona, mas é um pouco desajeitado.

Eu acho que a pergunta é:? isso poderia ser feito e tem algo como isto foi feito

Nenhuma solução correta

Outras dicas

Eu não sei de qualquer coisa que se encaixa exatamente sua descrição. No entanto ...

Para uso depuração somente, Visual Studio 2010 tem "tracepoints". Estes são adicionados da mesma maneira como pontos de interrupção, mas em vez de parar o programa, eles saída de algum texto para a saída de depuração. Porque eles são conjunto no depurador, eles não afetam seu código-fonte em tudo.

Se você quiser rastrear a atividade em uma compilação de lançamento, em seguida, basta adicionar System.Diagnostic.Trace.WriteLine () chama em seu código. Estes podem ser controlados usando TraceSwitches, para que possam ser desativado por padrão e só ligado se precisar de informações adicionais para diagnosticar um problema. Ao contrário Debug.WriteLine () chama eles são incluídos (por padrão) em compilações, bem como compilações de depuração. Note-se que essas chamadas de rastreamento custam uma pequena sobrecarga, mesmo que o TraceSwitch é desactivada, portanto evite usá-los em regiões críticas de desempenho de seu código.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top