Dove posso trovare le specifiche di CLR? Ad esempio, voglio vedere come viene implementato in memoria l'oggetto "ThreadStart".Specifiche CLR .NET
Grazie.
Dove posso trovare le specifiche di CLR? Ad esempio, voglio vedere come viene implementato in memoria l'oggetto "ThreadStart".Specifiche CLR .NET
Grazie.
Il più vicino che sono a conoscenza di è ECMA-335, che è la specifica CLI. Tuttavia, è necessario essere consapevoli del fatto che il modello di memoria ECMA è significativamente più debole di quello .NET. (Dove .NET è l'implementazione di Microsoft della CLI.)
Dubito che la CLI menzioni esplicitamente lo ThreadStart
- è solo un altro delegato. A cosa ti interessa particolarmente?
sicuro circa la Spec, ma se si vuole guardare i dettagli di implementazione si consiglia di utilizzare Red-gate Reflector
è the common language infrastructure specification quello che stai cercando?
La pagina contiene molti collegamenti a cose come il c# language specification e la CLI
Mi piacerebbe vedere come viene costruito un oggetto come un delegato in memoria (i suoi campi, metodi, ecc ...). – Thomas
Bene, * puoi * guardarlo con Reflector, ma quello sarà specifico per l'implementazione - non mi aspetterei di trovare quell'informazione in una specifica. Dovresti anche tener presente che i delegati hanno una sorta di doppia natura: puoi visualizzarli in modo multicast o puoi considerare quale sarebbe una "azione". È possibile visualizzarlo nelle proprietà Delegate.Method/Target e nel metodo MulticastDelegate.GetInvocationList. –
Le specifiche CLI guidano anche solo il linguaggio C# o l'implementazione CLR? Le specifiche ECMA per CLR sono diverse da ECMA-335? Diciamo che devo scrivere un'implementazione CLR per un sistema operativo diverso da Windows, quindi quale specifica ECMA dovrei seguire? – RBT