2016-09-19 68 views
0

当我从服务器接收数据并尝试在skreen上显示它时,我的浏览器崩溃并且内存已满,我该如何解决这个问题。这是我的代码:运行处理草图后浏览器崩溃

String pic ; 
PImage img; 
int x; 
int y; 
int pad = 10; 
int bs = 50; 
String[] list = new String[0]; 

void setup(){ 
    size(500,500); 
    background(150); 
    //img = loadImage(pic); 
} 

void draw(){ 
    for (int i = 0; i < list.length ; i++){ 
     x = pad + (bs+pad)*i; 
     y = pad; 
     pic = list[i]; 
     img = loadImage(pic); 
     image(img,x,y,bs,bs); 
     println(pic); 
    } 
} 
void change(String val){ 
    list = split(val," "); 
} 

回答

0

你不应该从draw()函数中调用loadImage()

draw()函数每秒调用60次,并且您正在加载整个列表,所以您每秒都要加载数百个图像。您的浏览器无法处理该问题。

想想这样:你应该只加载每个图像一次。重新加载它每秒60次是极端矫枉过正。

取而代之,请从change()函数加载,我已经在your other question中解释了如何处理。