Exemple #1
0
        /// <inheritdoc />
        public ReattachInformation Release()
        {
            CheckDisposed();
            //we still don't want to dispose the dmb yet, even though we're keeping it alive
            var tmpProvider = reattachInformation.Dmb;

            reattachInformation.Dmb = null;
            released = true;
            Dispose();
            byondLock.DoNotDeleteThisSession();
            tmpProvider.KeepAlive();
            reattachInformation.Dmb = tmpProvider;
            return(reattachInformation);
        }
        /// <inheritdoc />
        public async Task <ReattachInformation> Release()
        {
            CheckDisposed();

            // we still don't want to dispose the dmb yet, even though we're keeping it alive
            var tmpProvider = reattachInformation.Dmb;

            reattachInformation.Dmb = null;
            released = true;
            await DisposeAsync().ConfigureAwait(false);

            byondLock.DoNotDeleteThisSession();
            tmpProvider.KeepAlive();
            reattachInformation.Dmb = tmpProvider;
            return(reattachInformation);
        }