gpt4 book ai didi

java - J2me应用程序多次播放文件内存不足异常

转载 作者:行者123 更新时间:2023-11-29 08:05:36 24 4
gpt4 key购买 nike

在我的 j2me 应用程序中,每次用户单击一个项目时,我都必须播放一个小的声音文件。但问题是当我多次播放声音文件时,就像在 10-14 次之后它给了我内存不足异常。虽然我每次播放文件时都会释放播放器,但仍然如此给出内存不足异常:这是代码片段,

public void playSound(String soundFile) {
try{
if (player!=null) {
try {
player.deallocate(); //deallocate the unnecessary memory.
} catch (Exception ex) {
player=null;
System.gc();
}
}

player = Manager.createPlayer(getClass().getResourceAsStream(musicFolder + soundFile), "audio/mpeg");
// player = Manager.createPlayer(is, "audio/mpeg");
player.realize();

// get volume control for player and set volume to max
VolumeControl vc = (VolumeControl) player.getControl("VolumeControl");
if (vc != null) {
vc.setLevel(100);
}

player.prefetch();
player.start();
isException=false;
} catch (Exception e) {

isException=true;
}
}

谁能告诉我哪里出了问题?

最佳答案

三件事要牢记

  • 如果您要多次播放相同的声音,您可能希望预取一个 Player 并多次启动它。

  • 当您想正确清理播放器时,您应该调用 Player.close()

  • 您可能希望使用媒体事件监听器来独立于用户输入关闭和/或重新启动播放器。

关于java - J2me应用程序多次播放文件内存不足异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11521916/

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