当不同的线程访问静态方法时,在该方法中声明的对象是本地的还是在java中的线程之间共享?
另外,调用thread.interrupt()正在执行i/o的线程是否安全?
在static方法内声明的对象不在线程之间共享.在方法之外定义的对象static是共享的.
所以:
private static Object thisIsShared;
public static void myMethod() {
Object thisIsNotShared = new Object();
}
Run Code Online (Sandbox Code Playgroud)
如果您要调用interrupt()执行I/O的线程,您应该查看使用实现该InterruptableChannel接口的类.
| 归档时间: |
|
| 查看次数: |
2094 次 |
| 最近记录: |