-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 All,
While working on the sort-file-listing enhancement over the weekend, I looked in the Tomcat code to see if we already had a method to split a string by a single character. The closest method I found was org.pache.jasper.compiler.JspUtil which splits on a string, so I rejected it as being a bit too general-purpose for my needs. But it got me looking into the implementation of the method, and it looks a little sketchy. First, it uses a java.util.Vector. Yep, a Vector. Remember those? Synchronized everything? The Vector is not used outside of the method at all -- it's just local and temporary. So, the obvious conclusion is that it should be changed to ArrayList, right? But, modern JVMs are fairly good at (a) processing contention-less locks more quickly and (b) identifying objects which cannot possibly have lock-contention and simply skipping the locking. What's the right move in these cases? Should we change Vector -> ArrayList and "help-out" the compiler and runtime, or should we leave the code alone because "it's fine"? Similar arguments can be made for using StringBuilder over StringBuffer, etc. WDYT? - -chris -----BEGIN PGP SIGNATURE----- Comment: Using GnuPG with Thunderbird - https://www.enigmail.net/ iQIzBAEBCAAdFiEEMmKgYcQvxMe7tcJcHPApP6U8pFgFAlzTAMcACgkQHPApP6U8 pFjEOQ//SpbOVCErJu8SCue+RagRp0Z0PsAwbquf2z4NuMsPZVST66fcjE7QY7aI 9whVdUBauxNiUCwMUOkgV8g8IGBB8KoWyhyIkTWCZuh+cwan6+5aKesE5UcUdYW5 Xg93cqB4oGUWsR1YaEWEdycBObCTcXx/oHTq26/rXZvrGDHGU7rrGGOgTqO4TETU 6xvME86xTaImrBYIrnSUTo2S3QyPbqsoOOzEWinyW75cvR6xFw4iNNRfgzHIlb8f EIUjCqHasm4qAcxQ+t0DIoeVbWvcLpX49UMNyXP5Wt2frOjeTzpx4ErFrNXsAlQd JYoNgo50nAYNwxAsnBbZCrqSkaFO89I+nj7Tq9WDovOTF17CyMMaYtJiBe/ocTNv 25JmldlsM/wFY+ol9PQz9UmfzOHCcKGWEV4DcKaro6aTBzhELGYHpRh3z+ZNNuHD zkbJPRZFDZ4XC9dwRSfm0DUbIsYP2peBp3z7/1hWm+lnK6NIAZQQh0TzJ/cIliKw 6uWvCesERD1GyQosqoL0h9MHSckGpTSfbk+iI6MZtEwQc3AH4C27fm6MpfAc8YQU sr0jf2EdgzrC990jazPZcRbpwT8Eifc5kF6QgkbiockkqC/Zr28awL7vY2m5Szg9 n2scZoWUAnkGM8k0x3sFM4DZpthjUGVe78ZsBnJkKX4Q5LAnAYQ= =U4Jd -----END PGP SIGNATURE----- --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org