8059677: Thread.getName() instantiates Strings
Reviewed-by: chegar, dholmes, sla, rriggs
This commit is contained in:
parent
cc2452b769
commit
4a8e05977e
@ -145,7 +145,7 @@ class Thread implements Runnable {
|
||||
registerNatives();
|
||||
}
|
||||
|
||||
private volatile char name[];
|
||||
private volatile String name;
|
||||
private int priority;
|
||||
private Thread threadQ;
|
||||
private long eetop;
|
||||
@ -366,7 +366,7 @@ class Thread implements Runnable {
|
||||
throw new NullPointerException("name cannot be null");
|
||||
}
|
||||
|
||||
this.name = name.toCharArray();
|
||||
this.name = name;
|
||||
|
||||
Thread parent = currentThread();
|
||||
SecurityManager security = System.getSecurityManager();
|
||||
@ -1119,7 +1119,11 @@ class Thread implements Runnable {
|
||||
*/
|
||||
public final synchronized void setName(String name) {
|
||||
checkAccess();
|
||||
this.name = name.toCharArray();
|
||||
if (name == null) {
|
||||
throw new NullPointerException("name cannot be null");
|
||||
}
|
||||
|
||||
this.name = name;
|
||||
if (threadStatus != 0) {
|
||||
setNativeName(name);
|
||||
}
|
||||
@ -1132,7 +1136,7 @@ class Thread implements Runnable {
|
||||
* @see #setName(String)
|
||||
*/
|
||||
public final String getName() {
|
||||
return new String(name, true);
|
||||
return name;
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user