Safe and atomic run-time code evolution for Java and its application to dynamic AOP

Thomas Würthinger, Danilo Ansaloni, Walter Binder, Christian L. Wimmer, Hanspeter Mössenböck · 2011

Dynamic updates to running programs improve development productivity and reduce downtime of long-running applications. This feature is however severely limited in current virtual machines for object-oriented languages. In particular, changes to classes often apply only to methods invoked after a class change, but not to active methods on the call stack of threads. Additionally, adding and removing methods as well as fields is often not supported.

Read the paper · More papers on PaperTik