Pergunta

Se eu escrever uma DynamicMethod com um ILGenerator eo código que eu saída é segmento seguro seria o delegado resultando ser threadsafe?

A minha preocupação é que a IL é compilado pela primeira vez o método é executado. Se isso for verdade o que acontece se algumas outras tentativas de rosca para executar o delegado enquanto ele está compilando?

Foi útil?

Solução

Ele não faz nenhuma diferença com um delegado padrão. Eles estão presentes como MSIL em algum lugar e o JIT compilá-los quando quiser.

Uma vez que você tê-lo em forma delegado é um corpo de código que você poderia chamar. Isso é tudo que você realmente precisa saber. A implementação de .NET você estiver executando em (Rotor, Mono, Microsoft um) deve protegê-lo de qualquer consideração sobre isso, caso contrário, é um bug na implementação.

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