小编Mai*_*ian的帖子

如何从Linux命令行干净地关闭Eclipse?

有没有办法从命令行干净地关闭Eclipse,以便保存文件和工作区?杀-3没有做任何事情.kill -1和kill -15(默认值)导致Eclipse突然弹出JVM终止弹出窗口.kill -9做同样的事情.

用例是我在装有Eclipse的机器上远程工作,我希望通过关闭Eclipse来节省内存,但我希望Eclipse先保存其状态.

我可以使用VNC或一些替代桌面共享软件,但这非常重,我更喜欢命令行解决方案.

编辑:系统信息:RHEL5.1使用GNOME 64位

eclipse linux workspace command-line kill

30
推荐指数
3
解决办法
2万
查看次数

ThreadLocal HashMap vs ConcurrentHashMap用于线程安全的未绑定缓存

我正在创建一个具有以下特征的memoization缓存:

  • 高速缓存未命中将导致计算和存储条目
    • 这个计算非常昂贵
    • 这种计算是幂等的
  • 无界限(条目从未删除),因为:
    • 输入将导致最多500个条目
    • 每个存储的条目都很小
    • 缓存相对短缺(通常不到一小时)
    • 总的来说,内存使用不是问题
  • 将有数千个读取 - 在缓存的生命周期中,我预计99.9%+缓存命中
  • 必须是线程安全的

什么会有一个优越的性能,或在什么条件下一个解决方案优于另一个解决方案?

ThreadLocal HashMap:

class MyCache {
    private static class LocalMyCache {
        final Map<K,V> map = new HashMap<K,V>();

        V get(K key) {
            V val = map.get(key);
            if (val == null) {
                val = computeVal(key);
                map.put(key, val);
            }
            return val;
        }
    }

    private final ThreadLocal<LocalMyCache> localCaches = new ThreadLocal<LocalMyCache>() {
        protected LocalMyCache initialValue() {
            return new LocalMyCache();
        }
    };

    public V get(K key) {
        return localCaches.get().get(key);
    }
}
Run Code Online (Sandbox Code Playgroud)

ConcurrentHashMap的: …

java performance caching concurrenthashmap thread-local

8
推荐指数
1
解决办法
1万
查看次数