[Mono-dev] reloading mono domain or assemblies

Robert Jordan robertj at gmx.net
Fri Aug 13 09:22:44 EDT 2010


On 13.08.2010 15:10, marcus julius wrote:

> Did I make a mistake and/or is there a way to do this?

Once an assembly has been JITed (which basically means that
one of its methods was invoked), there is no way to change it.

There are 2 ways to reload an assembly:

1) change its assembly name and load it again. Note that this
will not unload/release the types provided by the previous assembly,
nor are the types of the reloaded assembly compatible with those of
the first one. With other words: don't do it unless you've
understood these drawbacks.

2) Use app domains which can be unloaded together with
their assemblies by design.

This is a common pattern in the .NET word, and it can be
implemented easily in managed code. There are plenty of
docs/sample on the internets.

Robert



More information about the Mono-devel-list mailing list