RFR(m): 8223306: Remove threads linked list (use ThreadsList's array in SA)

Robbin Ehn robbin.ehn at oracle.com
Tue May 7 07:52:58 UTC 2019


Hi David,

On 5/7/19 9:47 AM, David Holmes wrote:
> src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/CommandProcessor.java - 
> original code:
> 
> 1556         new Command("where", "where { -a | id }", false) {
> 1557             public void doit(Tokens t) {
> ...
> 1564                     for (JavaThread thread = threads.first(); thread != 
> null; thread = thread.next()) {
> 1565                         ByteArrayOutputStream bos = new 
> ByteArrayOutputStream();
> 1566                         thread.printThreadIDOn(new PrintStream(bos));
> 1567                         if (all || bos.toString().equals(name)) {
> 1568                             out.println("Thread " + bos.toString() + " 
> Address: " + thread.getAddress());
> ...
> 1577                             }
> 1578                             if (!all) return;
> 
> That looks like an early return to me.

Yes, thanks, it should not have been converted then.
I'll revisit CommandProcessor.java and the other sites.

/Robbin


> 
> Cheers,
> David
> -----
> 
> 
>> Thanks, Robbin
>>
>>>
>>> Thanks,
>>> David
>>>
>>> On 6/05/2019 5:31 pm, Robbin Ehn wrote:
>>>> Hi, please review.
>>>>
>>>> Old threads linked list remove and updated SA to use ThreadsList array instead.
>>>>
>>>> Issue:
>>>> https://bugs.openjdk.java.net/browse/JDK-8223306
>>>> Webrev:
>>>> http://cr.openjdk.java.net/~rehn/8223306/webrev/
>>>>
>>>> Passes t1-3 (which includes SA tests).
>>>>
>>>> Thanks, Robbin


More information about the serviceability-dev mailing list