例如,有一些应用程序(在我的 src 控制之外)会生成成千上万个存储为 /dev/shm/{some Map-ID}.ser 的序列化 Map 实例。它们使用普通的旧 java.io.* 包进行序列化。
我的 src 控件中的代码(用于反序列化 Map 实例)是否可以从使用 NIO 而不是普通的旧 java.io.* 包中受益?或者,理论上,鉴于这些 IO 操作是在 /dev/shm 上的,是否任何 NIO 优势都被认为可以忽略不计?
private Map<Integer,String> deserializeMapFrKernelSHM(String shmKey) {
Map<Integer,String> retM = null;
try {
FileInputStream frKernelSHM = new FileInputStream("/dev/shm/"+shmKey+".ser");
ObjectInputStream in = new ObjectInputStream(frKernelSHM);
retM = (Map<Integer,String>) in.readObject();
System.out.println("Linux IPC shmop(GET) de-serialized Map<K,V> from /dev/shm/"+shmKey+".ser");
}catch (Exception e) {
e.printStackTrace();
}
return(retM);
}