用Java直接将数据写入RAM,然后读取它?

And*_*llo -8 java optimization ram read-write shared-memory

我知道这可能与编程中的许多一般规则背道而驰,但你会怎么做呢?我问这个有两个原因:

  1. 我想尝试让应用程序将数据写入RAM,另一个用于从RAM读取相同的数据.
  2. 我想知道因为在不久的将来我将不得不优化一个java应用程序.

chu*_*ubs 5

这个问题缺乏很多关于一般编程的知识,至少从它的表达方式来看,但是我到底会在这里幽默作者.

你真正要求的是共享内存作为IPC(进程间通信)的一种形式.Java不支持共享内存,因为它非常特定于操作系统.而且,如果您想在两个进程之间共享对象,那么使用套接字就会变得简单且灵活.您似乎非常关注性能而不了解程序的性能,但是通过套接字共享数据与实际用途的共享内存一样快.我不会过分担心共享内存不是一个选项.现在这个称为互联网的东西出现了,现在没有多少程序使用它了.

如果您真的对共享内存感到不满,可以使用NIO查看内存映射文件.现在NIO2已经推出了Java 7,可能还有一些其他选项具有更好的性能.