由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Java版 - 这段实例化的代码可以优化提速吗?
相关主题
从文件读入数据得到的是bytesjava可以直接去读txt file里指定的一行吗?
请问一个serialize class object下载运行的问题how to multicast objects to clients in java?
如何读取这种格式的数据?Object stream & serilization有啥用处?
File generated by Java cannot be read by Android App[合集] 问一个很常见的过程的实现
怎样吧byte[]变成java.security.Key?跪求大牛指点Java,看不懂什么意思。
How to know the size of a java object ?Re: Need Emergent help for Java I/O!
java image processing problemRe: 急问关于applet里打开文件的问题
java网站写好,如何提速? (转载)Java的中文读写问题
相关话题的讨论汇总
话题: object话题: file话题: new
进入Java版参与讨论
1 (共1页)
b***i
发帖数: 3043
1
某个类的文件本地读入和处理需要0.5秒,我就想能不能串行化,然后我直接读入。结
果发现,直接本地读入object需要1秒。下面就是代码,请问有没有办法加速?obj文件
一共几百k bytes.
public static Object load(String filename){
try {
FileInputStream fin = new FileInputStream(filename);
ObjectInputStream ois = new ObjectInputStream(fin);
Object obj = ois.readObject();
ois.close();
System.out.println("unserialized theQueue");
return obj;
} catch (Exception e) { e.printStackTrace(); }
return null;
}
r*****l
发帖数: 2859
2
Seiralization/Deserialization may be expensive. Depending on your specific
need, you can find multiple possible solutions:
For example, you can store just the state of the object and construct that
object after you read the state.
You can also use multiple threads to read in parallel if throughput, not
response time, is important.
You can also spend money to buy high-speed storage to reduce I/O.
...

【在 b***i 的大作中提到】
: 某个类的文件本地读入和处理需要0.5秒,我就想能不能串行化,然后我直接读入。结
: 果发现,直接本地读入object需要1秒。下面就是代码,请问有没有办法加速?obj文件
: 一共几百k bytes.
: public static Object load(String filename){
: try {
: FileInputStream fin = new FileInputStream(filename);
: ObjectInputStream ois = new ObjectInputStream(fin);
: Object obj = ois.readObject();
: ois.close();
: System.out.println("unserialized theQueue");

n******8
发帖数: 172
3

try other approach to read the file, might help.

【在 b***i 的大作中提到】
: 某个类的文件本地读入和处理需要0.5秒,我就想能不能串行化,然后我直接读入。结
: 果发现,直接本地读入object需要1秒。下面就是代码,请问有没有办法加速?obj文件
: 一共几百k bytes.
: public static Object load(String filename){
: try {
: FileInputStream fin = new FileInputStream(filename);
: ObjectInputStream ois = new ObjectInputStream(fin);
: Object obj = ois.readObject();
: ois.close();
: System.out.println("unserialized theQueue");

a*******n
发帖数: 237
4
try to read the file into memory first.
File file = new File(filename);
FileInputStream fis = new FileInputStream(file);
byte[] buffer = new byte[file.length()];
fis.read(buffer);
fis.close();
ByteArrayInputStream bais = new ByteArrayInputStream(buffer);
ObjectInputStream ois = new ObjectInputStream(bais);

【在 b***i 的大作中提到】
: 某个类的文件本地读入和处理需要0.5秒,我就想能不能串行化,然后我直接读入。结
: 果发现,直接本地读入object需要1秒。下面就是代码,请问有没有办法加速?obj文件
: 一共几百k bytes.
: public static Object load(String filename){
: try {
: FileInputStream fin = new FileInputStream(filename);
: ObjectInputStream ois = new ObjectInputStream(fin);
: Object obj = ois.readObject();
: ois.close();
: System.out.println("unserialized theQueue");

b***i
发帖数: 3043
5
行,我试试先。

【在 a*******n 的大作中提到】
: try to read the file into memory first.
: File file = new File(filename);
: FileInputStream fis = new FileInputStream(file);
: byte[] buffer = new byte[file.length()];
: fis.read(buffer);
: fis.close();
: ByteArrayInputStream bais = new ByteArrayInputStream(buffer);
: ObjectInputStream ois = new ObjectInputStream(bais);

1 (共1页)
进入Java版参与讨论
相关主题
Java的中文读写问题怎样吧byte[]变成java.security.Key?
问个很简单的问题?How to know the size of a java object ?
新手请教怎样在Java里读文本文件中的内容java image processing problem
help about bitstream writerjava网站写好,如何提速? (转载)
从文件读入数据得到的是bytesjava可以直接去读txt file里指定的一行吗?
请问一个serialize class object下载运行的问题how to multicast objects to clients in java?
如何读取这种格式的数据?Object stream & serilization有啥用处?
File generated by Java cannot be read by Android App[合集] 问一个很常见的过程的实现
相关话题的讨论汇总
话题: object话题: file话题: new