ThreadPool.UnsafeQueueUserWorkItem(WaitCallback, Object) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Accoda il delegato specificato al pool di thread, ma non propaga lo stack di chiamate al thread di lavoro.
public:
static bool UnsafeQueueUserWorkItem(System::Threading::WaitCallback ^ callBack, System::Object ^ state);
public static bool UnsafeQueueUserWorkItem(System.Threading.WaitCallback callBack, object state);
[System.Security.SecurityCritical]
public static bool UnsafeQueueUserWorkItem(System.Threading.WaitCallback callBack, object state);
static member UnsafeQueueUserWorkItem : System.Threading.WaitCallback * obj -> bool
[<System.Security.SecurityCritical>]
static member UnsafeQueueUserWorkItem : System.Threading.WaitCallback * obj -> bool
Public Shared Function UnsafeQueueUserWorkItem (callBack As WaitCallback, state As Object) As Boolean
Parametri
- callBack
- WaitCallback
Oggetto WaitCallback che rappresenta il delegato da richiamare quando un thread nel pool di thread preleva l'elemento di lavoro.
- state
- Object
Oggetto passato al delegato quando viene eseguito il servizio dal pool di thread.
Valori restituiti
true se il metodo ha esito positivo; OutOfMemoryException viene generata se non è stato possibile accodare l'elemento di lavoro.
- Attributi
Eccezioni
Il chiamante non dispone dell'autorizzazione richiesta.
È stata rilevata una condizione di memoria insufficiente.
Impossibile accodare l'elemento di lavoro.
callBack è null.
Commenti
A differenza del QueueUserWorkItem metodo , UnsafeQueueUserWorkItem non propaga lo stack di chiamate al thread di lavoro. Ciò consente al codice di perdere lo stack di chiamate e di elevare i privilegi di sicurezza.
Caution
L'uso UnsafeQueueUserWorkItem potrebbe aprire inavvertitamente un buco di sicurezza. La sicurezza dell'accesso al codice basa i controlli delle autorizzazioni per le autorizzazioni di tutti i chiamanti nello stack. Quando il lavoro viene accodato in un thread del pool di thread usando UnsafeQueueUserWorkItem, lo stack del thread del pool di thread non avrà il contesto dei chiamanti effettivi. Il codice dannoso potrebbe essere in grado di sfruttarlo per evitare i controlli delle autorizzazioni.