private void CleanupAppContext()
        {
            Logger.LogTrace("DeezerRenderer::CleanupAppContext => Cleaning up app context ...");

            dz_error_t err;

            if (_dzPlayer != IntPtr.Zero)
            {
                //_evtPlayerDeactivated.Reset();
                //_dzPlayerDeactivatedCB = new dz_activity_operation_callback(OnPlayerDeactivated);

                err = DeezerApi.dz_player_deactivate(_dzPlayer, _dzPlayerDeactivatedCB, IntPtr.Zero);

                DeezerApi.HandleDzErrorCode("dz_player_deactivate", err, false);

                //_evtPlayerDeactivated.WaitOne(DZ_OPERATION_TIMEOUT);
                Thread.Sleep(2000);

                Logger.LogTrace("dz_player_deactivate => Assuming Success");

                DeezerApi.dz_object_release(_dzPlayer);
                _dzPlayer = IntPtr.Zero;
            }

            if (_dzConnect != IntPtr.Zero)
            {
                //_evtConnectDeactivated.Reset();
                //_dzConnectDeactivatedCB = new dz_activity_operation_callback(OnConnectDeactivated);

                err = DeezerApi.dz_connect_deactivate(_dzConnect, _dzConnectDeactivatedCB, IntPtr.Zero);

                DeezerApi.HandleDzErrorCode("dz_connect_deactivate", err, false);

                //_evtConnectDeactivated.WaitOne(DZ_OPERATION_TIMEOUT);
                Thread.Sleep(2000);

                Logger.LogTrace("dz_connect_deactivate => Assuming Success");

                DeezerApi.dz_object_release(_dzConnect);
                _dzConnect = IntPtr.Zero;
            }
        }