[Mono-dev] Compatible dll's

Paolo Molaro lupus at ximian.com
Wed Oct 11 13:07:47 EDT 2006

On 10/11/06 Joachim Ante wrote:
> >> So i want to check if all classes, functions & all their parameters still
> >> exist and are identitical to what we had when mcs compiled against the dll
> >> last time.
> > 
> > You could use our "corcompare" tools which we use to compare two set of
> > APIs ourselves.  
> Sounds ok. How is the performance of corcompare approximately?
> Can i do a reasonably sized dll (300kb) in less than 0.01 seconds?
> (Just looking for some ballpark numbers)

That's unlikely. running hello world takes longer than that.

> What is actually going to happen if i would just load the new and changed
> dll and it would actually have different signatures? Would it just crash? Or
> give me a runtime exception at some point when jitting one of the functions?
> Maybe i could make mono preload the dll completely and if that fails i know
> they are not compatible?

What happens depends on the change. A diffrent method signature is the
same as a missing method and you should get a missing method exception.
Other changes may result in different exceptions and you may well hit
some crash, also depending if we have implemented checks etc.
Maybe you should describe the problem you're trying to solve instead of
asking if a weird solution would work.


lupus at debian.org                                     debian/rules
lupus at ximian.com                             Monkeys do it better

More information about the Mono-devel-list mailing list