gpt4 book ai didi

java - getImage() 性能

转载 作者:塔克拉玛干 更新时间:2023-11-01 19:10:39 24 4
gpt4 key购买 nike

我有一个旧的 Java 小程序(不是我写的)需要更好的性能。

我使用的是:

getToolkit().getImage(imageURL)

我的问题是:

  1. 它接缝图像将一个接一个地加载而不是并行

  2. 该请求具有所有 http keep-alive 标志,但它为每个图像打开一个新的 TCP 连接。永远不要关闭连接。

有没有使用http keep-alive函数并行处理图片的解决方案?

一个简短的例子,应用程序如何工作:

public class test 
{
Map<String, URL> urlList = new HashMap<String, URL>();
urlList.put("test", "/test.jpg");
urlList.put("grrr", "/grrr.jpg");
urlList.put("htutz", "/htutz.jpg");
urlList.put("fsdfgf", "/fsdfgf.jpg");
urlList.put("fdgsfd", "/fdgsfd.jpg");
urlList.put("fdgtzt", "/fdgtzt.jpg");
urlList.put("reterg", "/reterg.jpg");
urlList.put("ssdfsfdgsfd", "/ssdfsfdgsfd.jpg");

for (URL imageUrl: urlList) {
{
new ImageExample(imageUrl);
}
}


public class ImageExample extends JApplet {
Image image;

public void ImageExample(URL imageUrl) {
image = getToolkit().getImage(imageUrl);
}

public void paint(Graphics g) {
g.drawImage(image, 20, 20, this);
}

@Override
public void draw( Graphics g )
{
paint(g);
}
}

最佳答案

创建一个新线程来加载每个图像并在加载图像时终止它。

像这样,您将同时加载所有图像,而不是逐个图像地加载。(而且你也不会阻塞 ui 线程)

(因为你不会使用缓存)

关于java - getImage() 性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15764889/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com