示例#1
0
        private NetHttpApplication GetSpecialApplicationInstance(NetHttpContext context)
        {
            NetHttpApplication application = null;

            lock (_freeSpecialInstances)
                if (_numFreeSpecialInstances > 0)
                {
                    application = (NetHttpApplication)_freeSpecialInstances.Pop();
                    _numFreeSpecialInstances--;
                }
            if (application == null)
            {
                application = (NetHttpApplication)NetHttpRuntime.CreateNonPublicInstance(_applicationType, null);
                application.InitSpecial(context, _state, this, _eventHandlerMethods);
            }
            return(application);
        }
示例#2
0
        internal NetHttpApplication GetApplicationInstance(NetHttpWorkerRequest wr, NetHttpContext context)
        {
            EnsureInited();
            EnsureAppStartCalled(context);
            //
            NetHttpApplication application = null;

            lock (_freeInstances)
                if (_numFreeInstances > 0)
                {
                    application = (NetHttpApplication)_freeInstances.Pop();
                    _numFreeInstances--;
                }
            if (application == null)
            {
                application = (NetHttpApplication)NetHttpRuntime.CreateNonPublicInstance(_applicationType, null);
                application.InitInternal(wr, context, _state, this, _eventHandlerMethods);
            }
            return(application);
        }
示例#3
0
 internal override void RejectRequestNow(HttpListenerWorkerRequest wr, bool silent)
 {
     NetHttpRuntime.RejectRequestNow(this, (WebHostWorkerRequest)wr, silent);
 }