MediaPlayer切换歌曲时内存使用量增加(Monogame c#)

MediaPlayer切换歌曲时内存使用量增加(Monogame c#),c#,xna,media-player,monogame,C#,Xna,Media Player,Monogame,我正在使用Monogame引擎制作一个游戏,我正在使用MediaPlayer播放背景音乐。当我切换播放的歌曲时,我可以看到ram的使用量增加了几MB(使用“性能和诊断工具”),即使这是一首已经预装的歌曲。在大量歌曲更改之后,这可能会成为一个问题。我想让游戏尽可能少地使用计算机资源 Song song1; Song song2; protected override void LoadContent() { song1 = Content.Load&

我正在使用Monogame引擎制作一个游戏,我正在使用MediaPlayer播放背景音乐。当我切换播放的歌曲时,我可以看到ram的使用量增加了几MB(使用“性能和诊断工具”),即使这是一首已经预装的歌曲。在大量歌曲更改之后,这可能会成为一个问题。我想让游戏尽可能少地使用计算机资源

 Song song1;
 Song song2;

 protected override void LoadContent()
        {
            song1 = Content.Load<Song>("song1");
            song2 = Content.Load<Song>("song2");
         }

 void updateMusic()
        {
            if (gameState == "lvl1") { MediaPlayer.Play(song1); }
            else if (gameState == "lvl2") { MediaPlayer.Play(song2);}
        }
Song-song1;
宋松2;
受保护的覆盖void LoadContent()
{
song1=Content.Load(“song1”);
song2=Content.Load(“song2”);
}
void updateMusic()
{
if(gameState==“lvl1”){MediaPlayer.Play(song1);}
else if(gameState==“lvl2”){MediaPlayer.Play(song2);}
}

我敢肯定,如果您不希望RAM使用率增加,在更改为新歌后必须卸载当前歌曲。即使这不是问题所在,如果你不打算再次或在不久的将来任何时候使用这首歌,你也应该这样做。你有没有测试过如果你加载一堆歌曲并在它们之间切换会发生什么?仅仅因为在这两首歌曲之间切换时看到使用率峰值,并不一定意味着随着在更多歌曲之间切换,使用率将继续增加。

结果表明,我使用的MonoGame(3.5)的当前版本存在错误,并且存在某种内存管理问题。切换到MonoGame 3.4版后,加载和卸载现在可以正常工作