public void CloseModule(Modules module) { if (!IsRunning(module)) { GideonBase.SynObj.SpeakAsync("This application is already close or not in running state !"); return; } switch (module) { case Modules.MediaPlayer: MediaPlayerObj.Close(); MediaPlayerObj = null; break; case Modules.WeatherForecast: WeatherForecastObj.Close(); WeatherForecastObj = null; break; case Modules.News: NewsObj.Close(); NewsObj = null; break; case Modules.Gallery: GalleryObj.Close(); GalleryObj = null; break; } GC.SuppressFinalize(ModuleTableObj[module]); GC.Collect(); ModuleTableObj[module] = null; ModuleTableObj.Remove(module); }