Non ho mai capito completamente this property of the IHttpHandler. È una proprietà che devi impostare quando implementi l'interfaccia. Ho assunto che impostarlo su true sarebbe meglio per le prestazioni, ma non sono sicuro di quali potrebbero essere gli effetti collaterali negativi. Devo restituire vero o falso?Devo impostare IsReusable su True nei miei HttpHandlers?
risposta
Viene utilizzato per indicare se una singola istanza di IHttpHandler verrà utilizzata per elaborare più richieste simultanee. Quindi, se si imposta su true
, si miglioreranno le prestazioni, ma è necessario assicurarsi che il codice sia thread-safe in quanto il metodo ProcessRequest
potrebbe essere richiamato da più thread contemporaneamente.
Il gestore è abbastanza semplice e non necessita di mantenere lo stato. Dovrebbe essere thread-safe. Quindi penso di poterlo impostare come vero! Grazie. –
Quando hai variabili membro private nel gestore e fai uso del contesto, questo è thread-safe? –
Puoi spiegare ** perché il metodo ProcessRequest potrebbe essere invocato da più thread contemporaneamente. **? –
Se l'implementazione IHttpHandler
contiene lo stato (forse impostazione nel costruttore e successivamente utilizzato in ProcessRequest
), allora a volte può essere utile per impostare IsReusable
su false.
IsReusable mantiene il gestore in memoria e in grado di gestire più richieste. Se impostato su false, deve creare una nuova istanza del gestore per ogni richiesta in entrata.
Ho avuto alcuni problemi con questa proprietà me stesso:
- 1. HTTPHandler e IsReusable con WebHandler
- 2. Devo includere categorie personalizzate nei miei progetti open source?
- 3. Cosa devo configurare SVN per ignorarlo nei miei progetti Delphi?
- 4. Devo definire un metodo principale nei miei script ruby?
- 5. MSpec, cosa devo inserire nei miei attributi [Subject()]?
- 6. È possibile impostare na.rm su TRUE globalmente?
- 7. Valutazione pagine ASPX da httpHandlers personalizzati
- 8. np.where non funziona nei miei Pandas
- 9. Devo testare i miei controller (MVC)?
- 10. Dove devo archiviare i miei dati dell'applicazione?
- 11. Devo impostare AssemblyConfigurationAttribute?
- 12. XSLT perché lo compare nei miei hrefs?
- 13. Come posso impostare RegistraBounds su true in Android?
- 14. Impostare IncludeExceptionDetailInFaults su true nel codice per WCF
- 15. Come impostare Artifactory discardOldBuilds su true in un Jenkinsfile?
- 16. Come impostare il puntatore bool su true in struct literal?
- 17. Come impostare le variabili python su true o false?
- 18. Come impedire a git su Cygwin di impostare core.filemode = true
- 19. Come risolvere l'ambiguità nei miei GADT
- 20. Devo impostare refit = FALSE durante il test degli effetti casuali nei modelli lmer() con anova()?
- 21. Imposta update_all_types su true su ElasticSearch
- 22. Come devo formattare i miei dati per il pacchetto Rogogit?
- 23. HttpProtocolParams.setUseExpectContinue (params, false) - quando impostare true?
- 24. Ottieni HttpHandlers registrati nel Web.Config da HttpContext
- 25. Perché devo sovraccaricare l'operatore == nei tipi POD?
- 26. Uso dell'SDK Android Non vedo EXIF nei miei JPEG
- 27. come impostare fielddata = true in kibana
- 28. Come impostare generate_statistics = true con NHibernate fluente
- 29. Perché usare 'redirect = true' nei montanti 1. * avanti?
- 30. Dove devo inserire i miei pacchetti Python autoprodotti?
possibile duplicato di [Importanza bool IsReusable interfaccia gestore HTTP] (http://stackoverflow.com/questions/539302/significance-of -bool-isreusable-in-http-handler-interface) – svick