Re: thread safe patch for classfile.Utility and generic.Type
"Alex" <[email protected]>
| Newsgroups | gmane.comp.jakarta.bcel.devel |
|---|---|
| Message-ID | <002101c34e3a$65324990$0201a8c0@maison> |
Hi Enver Attached to this mail you will find - a patch file based on CVS HEAD of tonight for classfile.Utility and generic.Type - a zip with complete source of those 2 classes The patch is rather simple. I would really appreciate if this patch could be added to the CVS. I don't care for @author or anything, just want it to work (better) as it should. Let me know if / when you plan a bcel-5-2 release or if I will have to take a "cvs build" as soon as you commit it. Note: the patched is based on CVS HEAD (HEAD differs from 5-1 only as regards an email adress in @author, but anyway) Enjoy Alex ----- Original Message ----- From: "Enver Haase" <[email protected]> To: <[email protected]> Cc: "BCEL Developers List" <[email protected]> Sent: Saturday, July 19, 2003 8:43 PM Subject: Re: thread safe patch for classfile.Utility and generic.Type > > Just send the patch to the list. > > regards, > Enver > > > Alex wrote: > > Hi > > > > I encountered problems in a multithreaded instrumentation layer I made over BCEL. As soon as I have to thread it generates bad method signatures. I read the following post http://www.mail-archive.com/[email protected]/msg00201.html, which warns about this issue. > > > > Indeed there is in classfile.Utility and generic.Type class only static methods, but several methods are getting/setting the same static field consumed_chars in several loops. When using BCEL in app server environment, you always have concurent classloading in different classloader (proxy, skel / stub, CMP impl ...). > > > > Those 2 classes are really bad designed. Such an issue requires a minimal effort to provide a patch and ensure thread safety. > > I have made a patch based on a ThreadLocal wrapping of consumed_chars. I would really appreciate if it could be incorporated in next release. Let me know if/where/how I have to provide a diff for it instead of packaging my own bcel-patch.jar with my app. > > > > Alex > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
patch-HEAD-threadsafe.zip
(application/x-zip-compressed, 18 KB) - not displayed