Shameless plug, i've written a simple library that shows how lookup.defineHiddenClass [1] can be used to implement dynamic proxies [ https://github.com/forax/hidden_proxy | https://github.com/forax/hidden_proxy ]
regards, Rémi [1] [ https://download.java.net/java/early_access/jdk15/docs/api/java.base/java/lang/invoke/MethodHandles.Lookup.html#defineHiddenClass(byte%5B%5D,boolean,java.lang.invoke.MethodHandles.Lookup.ClassOption...) | https://download.java.net/java/early_access/jdk15/docs/api/java.base/java/lang/invoke/MethodHandles.Lookup.html#defineHiddenClass(byte%5B%5D,boolean,java.lang.invoke.MethodHandles.Lookup.ClassOption...) ] > De: "Dr Heinz M. Kabutz" <[email protected]> > À: "mechanical-sympathy" <[email protected]> > Envoyé: Dimanche 26 Avril 2020 19:11:53 > Objet: Re: Best way to dynamically spin Java classes? > In Java 15 we will have hidden classes, which seem like the right model for > what > you are trying to do. > On Sun, 26 Apr 2020 at 19:36, Steven Stewart-Gallus < [ > mailto:[email protected] | [email protected] ] > > wrote: >> I'm spinning a lot of classes dynamically for an interpreter. >> I'm not sure the best way to load the classes into the VM. >> Aside from Unsafe's defineAnonymousClass what's the best way to load classes >> into the VM? >> I believe I could create a new classloader for each spun class but IIRC >> classloaders are expensive. >> I believe as much as possible I'd want to reuse MethodHandle and >> LambdaMetafactory to rely on the JVMs use of defineAnonymousClass. >> -- >> You received this message because you are subscribed to the Google Groups >> "mechanical-sympathy" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email >> to [ mailto:mechanical-sympathy%[email protected] | >> [email protected] ] . >> To view this discussion on the web, visit [ >> https://groups.google.com/d/msgid/mechanical-sympathy/8ded7316-7675-4747-afe5-5150a7b6009e%40googlegroups.com >> | >> https://groups.google.com/d/msgid/mechanical-sympathy/8ded7316-7675-4747-afe5-5150a7b6009e%40googlegroups.com >> ] . > -- > Dr Heinz M. Kabutz (PhD CompSci) > Author of "The Java(tm) Specialists' Newsletter" > Sun/Oracle Java Champion > JavaOne Rockstar Speaker > [ http://www.javaspecialists.eu/ | http://www.javaspecialists.eu ] > Tel: +30 69 75 595 262 > Skype: kabutz > -- > You received this message because you are subscribed to the Google Groups > "mechanical-sympathy" group. > To unsubscribe from this group and stop receiving emails from it, send an > email > to [ mailto:[email protected] | > [email protected] ] . > To view this discussion on the web, visit [ > https://groups.google.com/d/msgid/mechanical-sympathy/CACLL95rS-FtOi2511BqezhszD2ejxPp9BPUBFNUOnNNFndco_Q%40mail.gmail.com?utm_medium=email&utm_source=footer > | > https://groups.google.com/d/msgid/mechanical-sympathy/CACLL95rS-FtOi2511BqezhszD2ejxPp9BPUBFNUOnNNFndco_Q%40mail.gmail.com > ] . -- You received this message because you are subscribed to the Google Groups "mechanical-sympathy" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web, visit https://groups.google.com/d/msgid/mechanical-sympathy/54047174.1146571.1587922273948.JavaMail.zimbra%40u-pem.fr.
