HttpResponse.ClientDisconnectedToken Proprietà

Definizione

Ottiene un oggetto CancellationToken che viene attivato in caso di disconnessione del client.

public:
 property System::Threading::CancellationToken ClientDisconnectedToken { System::Threading::CancellationToken get(); };
public System.Threading.CancellationToken ClientDisconnectedToken { get; }
member this.ClientDisconnectedToken : System.Threading.CancellationToken
Public ReadOnly Property ClientDisconnectedToken As CancellationToken

Valore della proprietà

Token di annullamento.

Commenti

Questa API è thread-safe. Tuttavia, esistono alcune restrizioni sul modo in cui deve essere usato il token di annullamento. L'uso non corretto può causare condizioni di gara, deadlock o altri comportamenti imprevisti. Tenere presente le linee guida seguenti:

  • Assicurarsi di non chiamare in questa API al di fuori dei limiti di una singola richiesta, perché ASP.NET eliminerà il token di annullamento alla fine della richiesta. Non esiste alcuna garanzia che il token passerà mai a uno stato annullato prima di eliminarlo. Ad esempio, se la richiesta viene completata senza la disconnessione del client, il token verrà eliminato senza essere stato prima annullato.

  • Non attendere su CancellationToken.WaitHandle, perché questo elimina lo scopo di una notifica asincrona e può causare deadlock.

  • Non chiamare gli CancellationToken.Register overload che richiamano il callback nell'oggetto originale SynchronizationContext .

  • Non usare l'oggetto HttpContext o altri oggetti intrinseci non thread-safe ASP.NET dall'interno del CancellationToken.Register callback fornito al metodo. Il callback può essere in esecuzione simultaneamente con altri ASP.NET o codice dell'applicazione.

  • Mantenere i metodi di callback in esecuzione breve e non bloccante.

  • Eseguire ogni sforzo per evitare di generare eccezioni dall'interno dei metodi di callback.

Questa proprietà è supportata solo in Internet Information Service (IIS) 7.5 o versione successiva in modalità integrata. Se si richiama senza la versione o la modalità pipeline IIS corretta, viene generata una PlatformNotSupportedException classe. Per determinare la versione iis, usare IISVersion. Per determinare la modalità pipeline, utilizzare UsingIntegratedPipeline.

Si applica a